美文网首页
Oracle 函数(八)

Oracle 函数(八)

作者: Down1 | 来源:发表于2020-11-13 17:59 被阅读0次

    一、SQL 函数使用

    ① 字符函数

    • lower(char)
        将字符串转化为小写的格式。
    • upper(char)
        将字符串转化为大写的格式。
    • length(char)
        返回字符串长度。
    • substr(char,m,n)
        去字符串字母。
    • replace(char1,search_string,replace_string)
        替换字符串。
    • instr(char1,char2,[,n[,m]])
        取子串在字符串的位置。

    例子:

    • 将所有员工的名字按小写方式显示
    select lower(ename) from emp;
    
    • 将所有员工的名字按大写方式显示
    select upper(ename) from emp;
    
    • 显示正好为 5 个字符的员工姓名
    select * from emp where length(ename) = 5;
    
    • 显示所有员工姓名前三个字符
    select substr(ename,1,3) from emp;
    
    • 以首字母大写方式显示所有员工姓名
    //首字母大写
    select upper (substr(ename,1,1)) from emp;
    //后面字母小写
    select lower (substr(ename,2,length(ename)-1)) from emp;
    //合并
    select upper (substr(ename,1,1)) || lower (substr(ename,2,length(ename)-1)) from emp;
    
    • 以首字母小写方式显示所有员工姓名
    //首字母小写
    select lower (substr(ename,1,1)) from emp;
    //后面字母大写
    select upper (substr(ename,2,length(ename)-1)) from emp;
    //合并
    select lower(substr(ename,1,1)) || upper (substr(ename,2,length(ename)-1)) from emp;
    
    • 显示所有员工姓名,用 "a" 替换所有 "A"
    select replace (ename,'a','A') from emp;
    

    ② 数字函数

    数字函数:数字函数的输入参数和返回值的数据类型都是数字类型的。

    数字函数包括:cos,sosh,exp,In,log,sin,sinh,sqrt,tan,tanh,acos,asin,atan,round。

    最常用的数字函数:

    • round(n,[m])
        该函数用于执行四舍五入,如果省掉 m ,则四舍五入到整数;如果四舍五入到小数点的 m 位后,如果 m 是负数,则四舍五入到小数点的 m 位前。

    • trunc(n,[m])
        该函数用于截取数字,如果省掉 m ,就截去小数部分,如果 m 是正数就截取到小数点的 m 位后,如果 m 是负数,则截取到小数点的前 m 位。

    • mod(m,n)
        取余,m 为被除数,n 为除数,如果 n 为 0,结果为 m。

    • floor(n)
        返回小于或是等于 n 的最大整数。

    • ceil(n)
        返回大于或是等于 n 的最小整数。

    例子:

    • 显示在一个月为 30 天的情况所有员工的日薪金,忽略余数
    select trunc(sal/30),ename from emp;
    
    select floor(sal/30),ename from emp;
    
    //round
    select round (sal) + round(comm) * 13 from emp;
    select round (sal) + round(comm) * 13 from emp where ename='shunping';
    select round (sal,1) from emp where ename='shunping';
    select round (sal,1) from emp where ename='shunping';
    select round (sal,1),sal from emp where ename='shunping';
    select round (comm,1),comm from emp where ename='shunping';
    //trunc
    select trunc (comm,1),comm from emp where ename='shunping';
    select trunc (comm,-1),comm from emp where ename='shunping';
    //floor
    select floor (comm),comm from emp where ename='shunping';
    //ceil
    select ceil (comm),comm from emp where ename='shunping';
    //mod
    select mod(10,2) from dual;  
    

    注意:
      在做 Oracle 测试时,可以使用 dual 表进行测试。

    三、数学函数

    • abs(n)
        返回绝对值
        select abs(-13) from dual;

    • acos(n)
        返回数字的反余弦值

    • asin(n)
        返回数字的反正弦值

    • atan(n)
        返回数字的反正切

    • cos(n)
        返回数字的余弦值

    • exp(n)
        返回 e 的 n 次幂

    • log(m,n)
        返回对数值

    • power(m,n)
        返回 m 的 n 次幂

    相关文章

      网友评论

          本文标题:Oracle 函数(八)

          本文链接:https://www.haomeiwen.com/subject/qbmvbktx.html