常用的日期函数
函 数 | 功 能 | 示 例 | 结 果 |
MONTHS_BETWEEN | 返回两个日期间的月份 | months_between ('04-11月-05','11-1月-01') | 57.7741935 |
ADD_MONTHS | 返回把月份数加到日期上的新日期 | add_months('06-2月-03',1) add_months('06-2月-03',-1) | 06-3月-03 06-1月-03 |
NEXT_DAY | 返回指定日期后的星期对应的新日期 | next_day('06-2月-03','星期一') | 10-2月-03 |
LAST_DAY | 返回指定日期所在的月的最后一天 | last_day('06-2月-03') | 28-2月-03 |
ROUND | 按指定格式对日期进行四舍五入 | round(to_date('13-2月-03'),'YEAR') round(to_date('13-2月-03'),'MONTH') round(to_date('13-2月-03'),'DAY') | 01-1月-03 01-2月-03 16-2月-03 |
TRUNC | 对日期按指定方式进行截断 | trunc(to_date('06-2月-03'),'YEAR') trunc(to_date('06-2月-03'),'MONTH') trunc(to_date('06-2月-03'),'DAY') | 01-1月-03 01-2月-03 02-2月-03 |
常用的数字函数
函 数 | 功 能 | 示 例 | 结 果 |
ABS(n) | 取绝对值 | abs(-15) | 15 |
CEIL(n ) | 向上取整 | ceil(44.778) | 45 |
SIN(n) | 正弦 | sin(1.571) | .999999979 |
COS(n) | 余弦 | cos(0) | 1 |
SIGN(n) | 取符号 | sign(-32) | -1 |
FLOOR(n) | 向下取整 | floor(100.2) | 100 |
POWER(m,n ) | m的n次幂 | power(4,2) | 16 |
MOD(m,n) | 取余数 | mod(10,3) | 1 |
ROUND(m,n) | 四舍五入 | round(100.256,2) | 100.26 |
TRUNC(m,n) | 截断 | trunk(100.256,2) | 100.25 |
SQRT(n) | 平方根 | sqrt(4) | 2 |
常用的字符函数
函 数 | 功 能 | 示 例 | 结 果 |
INITCAP (char) | 首字母大写 | initcap ('hello') | Hello |
LOWER (char) | 转换为小写 | lower ('FUN') | fun |
UPPER (char) | 转换为大写 | upper ('sun') | SUN |
LTRIM (char, set) | 左剪裁 | ltrim ('xyzadams', 'xyz') | adams |
RTRIM (char, set) | 右剪裁 | rtrim ('xyzadams', 'ams') | xyzad |
TRANSLATE (char, from, to) | 按字符翻译 | translate ('jack', 'abcd', '1234') | j13k |
REPLACE (char, search_str, replace_str) | 字符串替换 | replace ('jack and jue', 'j', 'bl') | black and blue |
INSTR (char, substr[, pos]) | 查找子串位置 | instr ('worldwide', 'd') | 5 |
SUBSTR (char, pos, len) | 取子字符串 | substr ('abcdefg',3,2) | cd |
CONCAT (char1, char2) | 连接字符串 | concat ('Hello', 'world') | Helloworld |
常用的转换函数
函 数 | 功 能 | 示 例 | 结 果 |
TO_CHAR | 转换成字符串类型 | to_char(1234.5, '$9999.9') | $1234.5 |
TO_DATE | 转换成日期类型 | to_date('1980-01-01', 'yyyy-mm-dd') | 01-1月-80 |
TO_NUMBER | 转换成数值类型 | to_number('1234.5') | 1234.5 |
常用的多行函数
函 数 | 功 能 | 示 例 |
SUM() | 求和 | select sum(love) from pet; |
AVG() | 求平均值 | select avg(health) from pet where master_id=1; |
COUNT() | 计数 | select count(type_id) from pet; |
MAX() | 求最大值 | select max(adopt_time) from pet; |
MIN() | 求最小值 | select min(adopt_time) from pet where type_id=1; |
常用的其他函数
函 数 | 功 能 |
NVL(EXP1, EXP2) | 如果exp1的值为null,则返回exp2的值,否则返回exp1的值 |
NVL2(EXP1, EXP2, EXP3) | 如果exp1的值为null,则返回exp2的值,否则返回exp3的值 |
DECODE(VALUE,IF1,THEN1, IF2,THEN2,……,ELSE) | 如果value的值为if1,则返回then1的值,如果value的值为if2,则返回then2的值,……,否则返回else值 |