1.Single-Row Functions
NVL
NVL2
NULLIF
COALESCE
CASE
DECODE
-------------------------------------------------------------------------------------------------------------------------------------------------
2.Character functions
LOWER(column|expression) --小写
UPPER(column|expression) --大写
INITCAP(column|expression) --首字母大写
CONCAT(column1|expression1,column2|expression2) --字符串连接,相当于||
SUBSTR(column|expression,m[,n]) --取子串,m:第几位开始 n:取多少位
LENGTH(column|expression) --返回字符串长度
INSTR(column|expression,’string’, [,m], [n] ) --返回指定字符串在查询字符串中的位置,m:第几位开始 n:第几个
LPAD(column|expression, n,'string') --左补齐,长度为n,不够补string填
RPAD(column|expression, n,'string') --右补齐,长度为n,不够补string填
TRIM(leading|trailing|both trim_character FROM trim_source) --去首尾
REPLACE(text,search_string,replacement_string) --替代
-------------------------------------------------------------------------------------------------------------------------------------------------
3.Number Functions
ROUND(column|expression, n): (四舍五入)Rounds value to a specified decimal (可以作用于日期)
TRUNC(column|expression, n): (直接截断)Truncates value to a specified decimal(可以作用于日期)
MOD(m,n): (求余)Returns remainder of division
abs(num) --取绝对值
power --幂次函数
sqrt --开方函数
floor() --直接截断函数(数值)
ceil() --直接进位函数(数值)
-------------------------------------------------------------------------------------------------------------------------------------------------
4.Date functions
MONTHS_BETWEEN('01-SEP-95','11-JAN-94') --计算两个日期间有多少个月
ADD_MONTHS (‘31-JAN-96',1) --某个日期的多少个月以后
NEXT_DAY ('01-SEP-95','FRIDAY') --下一个星期五的日期 1:星期天
LAST_DAY ('01-FEB-95') --一个月的最后一天
ROUND(SYSDATE,'MONTH') --从月截断(四舍五入)
TRUNC(SYSDATE ,'MONTH') --从月截断(直接截断)
-------------------------------------------------------------------------------------------------------------------------------------------------
5.Explicit Data Type Conversion --显示转换函数
TO_CHAR(date, 'format_model')
日期格式:
YYYY --四位数年份
YEAR --年份英文全拼
MM --两位数月份
MONTH --月份全拼
MON --月份简写
DD --两位数日期
DAY --星期几全拼
DY --星期几缩写
AM or PM --Meridian indicator
A.M. or P.M. --Meridian indicator with periods
HH or HH12 or HH24 --Hour of day, or hour (1–12), or hour (0–23)
MI --Minute (0–59)
SS --Second (0–59)
SSSSS --Seconds past midnight (0–86399)
TH --Ordinal number (for example, DDTH for 4TH)
SP --Spelled-out number (for example, DDSP for FOUR)
SPTH --or THSP Spelled-out ordinal
TO_NUMBER(char[, 'format_model'])
TO_DATE(char[, 'format_model']) --format_model(日期格式填写)
-------------------------------------------------------------------------------------------------------------------------------------------------
6.General functions:
NVL (expr1, expr2) --如果expr1为空,返回expr2;否则返回expr1;expr1和expr2数据类型必须一致
NVL2 (expr1, expr2, expr3) --如果expr1为空,返回expr3;否则返回expr2;expr1、expr2、expr3未要求数据类型一致
NULLIF (expr1, expr2) --如果expr1=expr2,返回null;否则返回expr1
COALESCE (expr1, expr2, ..., exprn) --返回列表中的第一个不为空的值
-------------------------------------------------------------------------------------------------------------------------------------------------
7.Conditional expressions: --条件表达式
CASE expr WHEN comparison_expr1 THEN return_expr1 --条件互斥(符合条件1后,之后的条件不运行)
[WHEN comparison_expr2 THEN return_expr2
WHEN comparison_exprn THEN return_exprn
ELSE else_expr]
END
DECODE(expr,comparison_expr1,return_expr1,
comparison_expr2,return_expr2,
comparison_exprn,return_exprn,
else_expr)
END
-------------------------------------------------------------------------------------------------------------------------------------------------
8.types of group fonctions --分组函数
AVG() --平均值(忽略空值);数值类型
SUM() --求和(忽略空值);数值类型
COUNT() --计数;*:包含空值;count(distinct col_name):不包含空值
MAX() --最大值
MIN() --最小值
STDDEV() --
VARIANCE() --