函数分类:
1: 聚合函数
2: 日期函数
3: 字符串函数
4: 格式化函数
5: 类型转换函数
6: 加密函数
7: 控制流函数
8: 数学函数
9: 系统信息函数
MIN() 简单函数不再描述
MAX()
SUM()
TRANSLATE()
TRIM()
UPPER()
LOWER()
INITCAP()
CONCAT()
SUBSTR()
INSTR() 返回要截取的字符串在源字符串中的位置
LENGTH()
LPAD()
RPAD()
REPLACE()
NVL()
NVL2()
TO_CHAR()
TO_NUMBER()
TO_DATE()
ROUND()
TRUNC()
MONTHS_BETWEEN()
LAST_DAY()
DECODE
() *CASE WHEN
DISTINCT
CHR()
ASCII码 –》 字符
ASCII()
字符 –》 ASCII码
SYS_CONTEXT()
获取环境上下文的函数(很有用)
select SYS_CONTEXT('USERENV','IP_ADDRESS') from dual;
REGEXP_LIKE() 10G新增
REGEXP_INSTR() 10G新增
REGEXP_SUBSTR() 10G新增
REGEXP_REPLACE() 10G新增
REGEXP_COUNT() 11G新增
RANK() 发生不持续的编号 例如数据值 1,2,2,3 发生的编号将是1,2,2,4
DENSE_RANK() 发生持续的编号 例如数据值 1,2,2,3 发生的编号将是1,2,2,3
ROW_NUMBER() 发生持续的编号(不重复) 例如数据值 1,2,2,3 发生的编号将是1,2,3,4
FIRST_VALUE()
LAST_VALUE()
KEEP()
OVER()
SOUNDEX() 返回一个与给定字符串读音相同的字符串
ACOS() 给出反余弦的值
ASIN 给出反正弦的值
ATAN 给出反正切的值
CEIL 返回大于或等于给出数字的最小整数
COS 返回一个给定数字的余弦
SIN 返回一个给定数字的正弦
COSH 返回一个给定数字反余弦值
EXP 返回一个数字e的n次方根
FLOOR 对给定的数字取整数
LN 返回一个数字的对数值
LOG(n1,n2) 返回一个以n1为底n2的对数
MOD(n1,n2)
POWER 返回n1的n2次方根
ROUND和TRUNC
SIGN 取数字n的符号,大于0返回1,小于0,返回-1,等于0返回0
SIN 返回正弦值
SIGH 返回双曲正弦的值
SQRT 返回数字n的平方根
TAN 返回数字的正切值
TANH 返回数字n的双曲正切值
RADIO_TO_REPORT()
返回所占的百分比
NEW_TIME(date,'this','that') 给出在this时区 = other时区的日期和时间
CHARTOROWID() 将字符数据类型转换为ROWID类型
CONVERT(c,dset,sset) 将源字符串sset从一个语言字符集转换到另一个目的dset字符集
HEXTORAW 将一个十六进制构成的字符串转换为二进制
RAWTOHEX 将一个二进制构成的字符串转换成十六进制
ROWIDTOCHAR 将ROWID数据类型转换成字符类型
BFILENAME(dir,file) 指定一个外部二进制文件
DUMP(s,fmt,start,length) DUMP函数一fmt指定的内部数字格式返回一个VARCHAR2类型的值
EMPTY_BLOB()
EMPTY_CLOB() 这两个函数都是用来对大数据类型字段进行初始化操作的函数
GREATEST 返回一组表达式中的最大值,即比较字符的编码大小
LEAST 返回一组表达式中的最小值
STDDEV(distinct|all) 求标准差,all表示对所有值求标准差,distinct表示只对不同的值求标准差
STD
非空值的标准偏差
VAR[IANCE](distinct|all) 求协方差
MEDIAN() 求中位数(错误:DISTINCT 选项在此函数中禁用)
TO_MULTI_BYTE() 将一个单字节字符串转换为多字节字符串
TO_SINGLE_BYTE()
将一个多字节字符串转换为单字节字符串
USERENV 返回当前用户环境的信息
select userenv('isdba') from dual; --isdba 是否是管理员
select userenv('language') from dual; --yuyan
select userenv('SESSIONID') from dual; --userid
select userenv('instance') from dual; --instance
select userenv('lang') from dual; --lang
select userenv('terminal') from dual; --lang
vsize(x) 返回X的大小(字节)数
select vsize(user) from dual;
sys_connect_by_path() --用于分层查询显示路径 必须和connect by 一起使用