名称 |
描述 |
CONCAT(字符串1,字符串2) |
将字符串1和字符串2连接成一个新的字符串 示例: select CONCAT(job,ename) from emp |
LPAD(字段,总的大小,添充字符) |
左填充即向右对齐 示例: select empno,lpad(sal,10,'*') from emp |
RPAD(字段,总的大小,添充字符) |
右填充即向左对齐 示例: select empno,rpad(sal,10) from emp |
LOWER(字符串) |
将字符串全部变成小写; |
UPPER(字符串) |
将字符串全部变成大写; |
INITCAP(字符串) |
将字符串变成第一个字母大写,其余都变成小写; |
LENGTH(字符串) |
求出字符串的长度; |
SUBSTR(字符串,开始位置,长度) |
从字符串中取子串; 示例: select substr(ename,2,3) from emp;--从ename的第2位开始取3位 |
INSTR(字符串,字符) |
查看字符是否在字符串中存在;不存在返回0;存在则返回字符所在的的位置;如果有两个以上的字符则返回第一个的位置. 示例:select instr(ename,'S') from emp; |
TRIM(字符 FROM 字符串) |
去掉字符串首尾的字符; 示例: select trim('S' from ename) from emp; |
TO_CHAR() |
将不是其他类型转成字符类型; 对于日期型可以控制其格式:TO_CHAR(日期,'格式'); 其中格式有: 'YYYY' --以4为显示年; 'YEAR' --以标准格式显示年; 'MM' ; 'MON' ; 'DD' ; 'DAY'; 'HH' ; 'MI' ;'SS' |
REPLACE(字符串,字符串1,字符串2) |
将字符串中的字符1替换成字符2; 示例: select replace(ename,'SC','SS') from emp; |
TRANSLATE(字符串,字符串1,字符串2) |
替换多的字符; 示例: select translate(ename,'SH','AB') from emp; --表示将ename中的'S'换成'A','H'换成'B'; |
ASCII(char) |
求字符的ascii码 |
NLSSORT(字符串) |
对字符串排序. |
数学函数
名称 |
描述 |
ABS(数字) |
一个数的绝对值 |
CEIL(数字) |
向上取整;不论小数后的书为多少都要向前进位; CEIL(123.01)=124; CEIL(-123.99)=-123; |
FLOOR(数字) |
向下取整;不论小数后的书为多少都删除;| floor(123.99)=123; floor(-123.01)=-124; |
MOD(被除数,除数) |
取余数; MOD(20,3)=2 |
ROUND(数字,从第几为开始取) |
四舍五入; ROUND(123.5,0)=124; ROUND(-123.5,0)=-124; ROUND(123.5,-2)=100; ROUND(-123.5,-2)=-100; |
SIGN(数字) |
判断是正数还是负数;正数返回1,负数返回-1,0返回0; |
SQRT(数字) |
对数字开方; |
POWER(m,n) |
求m的n次方; |
TRUNC(数字,从第几位开始) |
切数字; TRUNC(123.99,1)=123.9 TRUNC(-123.99,1)=-123.9 TRUNC(123.99,-1)=120 TRUNC(-123.99,-1)=-120 TRUNC(123.99)=123 |
GREATEST(数字列表) |
找出数字列表中最大的数; 示例: select greatest(100,200,-100) from dual; --结果为200 |
LEAST(数字列表) |
找出数字列表中最小的数; |
SIN(n) |
求n的正旋 |
COS(n) |
求n的余旋 |
TAN(n) |
求n的正切 |
ACos(n) |
求n的反正切 |
ATAN(n) |
求n的反正切 |
exp(n) |
求n的指数 |
LN(n) |
求n的自然对数,n必须大于0 |
LOG(m,n) |
求n以m为底的对数,m和n为正数,且m不能为0 |
日期函数
名称 |
描述 |
ADD_MONTHS(日期,数字) |
在以有的日期上加一定的月份; 示例: select add_months(hiredate,20),hiredate from emp; |
LAST_DAY(日期) |
求出该日期的最后一天. |
MONTHS_BETWEEN(日期1,日期2) |
求出两个月之间的天树(注意返回的天数为小数); 示例: select months_between(sysdate,hiredate) from emp; |
NEW_TIME(时间,时区,'gmt') |
按照时区设定时间. |
NEXT_DAY(d,char) |
返回d指定的日期之后并满足char指定条件的第一个日期 |
其他函数
名称 |
描述 |
VSIZE(类型) |
求出数据类型的大小; |
NVL(字符串,替换字符) |
如果字符串为空则替换,否则不替换 |