Oracle中的函数
时间:2010-07-02 来源:futieshan
字符函数
名称 描述
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;存在则返回字符所在的位置;如果有两个以上的字符则返回第一个的位置。
TRIM(字符 FROM 字符串) 去掉字符串首尾的字符;示例:select trim('S' from ename) from emp;
TO_CHAR() 将其它类型转换成字符类型;对于日期类型可以控制其格式:TO_CHAR(日期,'格式');其中格式有'YYYY'——以4为显示年;'YEAR'——以标准格式显示年;'MM':'MON':'DD';'DAY':'HH':'MI':'SS' TO_num() 将其它类型转换为数字类型。
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的正切值
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),hirdate from emp;
LAST_DAY(日期) 求出该日期的最后一天。
MONTHS_BETWEEN(日期1,日期2) 求出两个月之间的天数(注意返回的天数为小数);示例:select months_between (sysdate,hiredte) from emp;
NEW_TIME(时间,时区,'gmt') 按照时区设定时间。
NEXT_DAY(d,char) 返回d指定的日期之后并满足char指定条件的第一个日期
SysDate()用来获得系统当前时间。
其它函数
VSIZE(类型) 求出数据类型的大小;
NVL(字符串,替换字符) 如果字符串为空则替换,否则不替换。
名称 描述
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;存在则返回字符所在的位置;如果有两个以上的字符则返回第一个的位置。
TRIM(字符 FROM 字符串) 去掉字符串首尾的字符;示例:select trim('S' from ename) from emp;
TO_CHAR() 将其它类型转换成字符类型;对于日期类型可以控制其格式:TO_CHAR(日期,'格式');其中格式有'YYYY'——以4为显示年;'YEAR'——以标准格式显示年;'MM':'MON':'DD';'DAY':'HH':'MI':'SS' TO_num() 将其它类型转换为数字类型。
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的正切值
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),hirdate from emp;
LAST_DAY(日期) 求出该日期的最后一天。
MONTHS_BETWEEN(日期1,日期2) 求出两个月之间的天数(注意返回的天数为小数);示例:select months_between (sysdate,hiredte) from emp;
NEW_TIME(时间,时区,'gmt') 按照时区设定时间。
NEXT_DAY(d,char) 返回d指定的日期之后并满足char指定条件的第一个日期
SysDate()用来获得系统当前时间。
其它函数
VSIZE(类型) 求出数据类型的大小;
NVL(字符串,替换字符) 如果字符串为空则替换,否则不替换。
相关阅读 更多 +