Oracle常用单行函数:

大小写控制函数

lower    :将大写变成小写
upper    :将小写变成大写
initcap  :修改字符串首字母大写

字符控制函数

CONCAT       :(concat)字符串拼接
SUBSTR       :substr 截取字符串
INSTR        :instr 返回查找数的索引
LENGTH(arg1) : length 返回参数的长度
LPAD         :lpad向左边填充字符串
RPAD         :rpad向右边填充字符串
TRIM         :trim 删除字符串两边的指定字符
REPLACE      :replace 替换字符串

数字函数

ROUND    : round四舍五入 
TRUNC    : trunc 截断 
MOD      : mod求余 

日期有关函数

在日期上加上或减去一个数字结果仍为日期。
SYSDATE         : sysdate 返回日期和时间
MONTHS_BETWEEN  : months_between (参数1,参数2),返回的是两日期差的月份数
ADD_MONTHS      : add_months向指定日期中加上若干月数。
NEXT_DAY        :next_day指定日期的下一个星期 * 对应 的日期
LAST_DAY        :last_day本月的最后一天
ROUND           :round四舍五入
TRUNC           :trunc日期截断

通用函数:

NVL (expr1, expr2)         :将空值转换成一个已知的值:
NVL2 (expr1, expr2, expr3) : expr1不为NULL,返回expr2;为NULL, 返回expr3
NULLIF (expr1, expr2)      :  相等返回NULL,不等返回expr1

条件表达式:

在 SQL 语句中使用IF-THEN-ELSE 逻辑,使用两种方法: 
CASE 表达式 
DECODE 函数

下面是使用case函数的一个例子:
SELECT last_name, job_id, salary,
        CASE job_id WHEN 'IT_PROG'  THEN 1.10*salary 
                    WHEN 'ST_CLERK' THEN 1.15*salary 
                    WHEN 'SA_REP'   THEN 1.20*salary 
        ELSE salary END "REVISED_SALARY" 
FROM   employees;

下面是使用decode函数的一个例子:
SELECT last_name, job_id, salary, 
        DECODE(job_id, 'IT_PROG',  1.10*salary, 
                        'ST_CLERK', 1.15*salary, 
                        'SA_REP',   1.20*salary, 
                                        salary)     
        REVISED_SALARY 
FROM   employees;

分组函数:

•AVG      :求平均
• COUNT   :计数函数,返回表中记录总数。
• MAX     :最大值
• MIN     :最小值
• STDDEV  :统计分析函数
• SUM     :求和
组函数忽略空值。
NVL函数使分组函数无法忽略空值。
不能在 WHERE 子句中使用组函数,可以在 HAVING 子句中使用组函数。

猜你喜欢

转载自blog.csdn.net/wxc_qlu/article/details/82709985
今日推荐