Oracle常用函数集锦

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

一、to_date字符串转换为日期型

【函数格式】
    to_date(sourceString[,formatParm[,nlsParm]])
【参数说明】
    sourceString要进行转换处理的源字符串
    formatParm格式参数源字符串按照该参数的指定格式进行转换是可选参数
    nlsParmnls设置参数是可选参数。
【样例展示】
    select to_date('2022/2/20 12:59:22','yyyy-mm-dd hh24:mi:ss') from dual;        --返回2022/2/20 12:59:22
    select to_date('2022/2/20','yyyy-mm-dd') from dual;        --返回2022/2/20
    select to_date('2022/2','yyyy-mm') from dual;              --返回2022/2/1
    select to_date('2022','yyyy') from dual;                   --返回2022/2/1

二、ABS绝对值函数

【函数格式】
    ABS(number)
【样例展示】
    ABS(-120)   -- 120

三、to_number字符型转换为数值型

【函数格式】
    to_number(sourceString[,formatParm[,nlsParm]])
【参数说明】
    sourceString要进行转换处理的源字符串
    formatParm格式参数源字符串按照该参数的指定格式进行转换是可选参数
    nlsParmnls设置参数是可选参数。
【样例展示】
    select to_number('123456')from dual;                --返回123456
    select to_number('123456.12')from dual;             --返回123456.12
    select to_number('00123456') from dual;             --返回123456
    select to_number('$123.45','$999.99') from dual;    --返回123.45
    select to_number('5,6,7.56','9,9,9.99') from dual;  --返回567.56

四、to_char日期型或数值型转换为字符型

【函数格式】
    to_char(sourceValue[,formatParm[,nlsParm]])
【参数说明】
    sourceValue要进行转换处理的日期型或数值型数据
    formatParm格式参数源数据按照该参数的指定格式进行转换是可选参数
    nlsParmnls设置参数是可选参数。
【样例展示】
    select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;        --返回2022-02-20 14:38:03
    select to_char(sysdate, 'yyyy/mm/dd') from dual;        --返回2022/02/20
    select to_char(sysdate, 'YYYY') from dual;              --返回2022
    select to_char(567,'999.00') from dual;                 --返回567.00
    select to_char(567,'99999.9') from dual;                --返回567.0
    select to_char(5678,'C9999') from dual;                 --返回CNY5678
    select to_char(567,'U999') from dual;                   --返回¥567

五、trimltrimrtrim去除空格函数

【函数格式】
    TRIM(sourceValue)     --TRIM去除指定字符的前后空格
    LTRIM(sourceValue)    --LTRIM去除指定字符的前面空格
    RTRIM(sourceValue)    --RTRIM去除指定字符后面后空格 
【样例展示】
    SELECT TRIM(' dd df ') FROM dual;      -- 'dd df'
    SELECT LTRIM(' dd df ') FROM dual;     -- 'dd df '
    SELECT RTRIM(' dd df ') FROM dual;     -- ' dd df'

六、case when类似于if-else语句

【函数格式】
    CASE 
    WHEN condition THEN result 
    [ WHEN condition THEN result ] 
    ... 
    [ ELSE result ] 
    END
【参数说明】
    condition返回一个布尔结果的表达式。如果结果为false则以相同的方式评估后续where子句。 
    result 当关联条件为真时要返回的值 
    ELSE result如果没有条件则CASE表达式的值是ELSE子句中的结果。 如果省略ELSE子句且没有条件匹配则结果为null。
【样例展示】
    select case when substr('134********',1,4) = '1349' then '电信' 
                when substr('134********',1,4) = '1348' then '联通' 
                else '移动' 
           end

七、decode类似于if-else语句

【函数格式】
    decode(expression,value,result1,result2)
    decode(expression,value1,result1,value2,result2,value3,result3......,default)
【样例展示】
    select decode ( 1+2,3,'a','b')from dual     -- a
    select decode(score,100,'NO.1',90,'NO.2',80,'NO.3','Other'),name from grade
    -- score=100输出'NO.1'score='90'输出‘NO.2’score='70'输出‘NO.3’其他值输出'Other'

八、NVL从两个表达式返回一个非 null 值

【函数格式】
    NVL(eExpression1, eExpression2)
【函数说明】
    若expression1值为null则该函数返回expression2
    若expression1值不为null则该函数返回expression1
    若expression1、expression2的值均为null则该函数返回null。
【样例展示】
    select nvl(null,'ABCD') from dual;           -- ABCD
    select nvl(null,12345) from dual;            -- 12345
    select nvl(null,sysdate) from dual;          -- 2022/2/25 11:54:18
    select nvl(null,to_date('2022/2/25 11:54:18','yyyy-mm-dd hh24:mi:ss')) from dual;           --    2022/2/25 11:54:18

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: oracle