mysql 与Oracle 函数对比

    技术2022-05-11  4

    Oracle函数和mysql函数比较

    1.       Oracle中的to_number()转换成数字;

    Oracle> Select to_number(‘123’) from dual;  -----         123;

                  select to_char(33) from dual;----                      33;

    Mysql> Select conv(‘123’,10,10); ----                123;

               Select cast(‘123’ as signed integer);---    123

              Select cast(‘-123’ as signed integer);---   -123

              select cast(33 as char(2) ); -------            33;

              select char(33);--------------------              !;(ascll)

    对应的mysql函数是conv(N,from_base,to_base)在不同的数字基之间变换数字。返回数字N的字符串数字,从from_base基变换为to_base基,如果任何参数是NULL,返回NULL。参数N解释为一个整数,但是可以指定为一个整数或一个字符串。最小基是2且最大的基是36。如果to_base是一个负数,N被认为是一个有符号数,否则,N被当作无符号数。   CONV64位点精度工作。

    cast中的signed表示有符号数;

     

    2.       四舍五入函数区别

    Oracle> select floor(12.89*10)/10 from dual;--12.8

              select ceil(12.82*10)/10 from dual;--12.9

              select round(12.86*10)/10 from dual;--12.9

          select round(12.84*10)/10 from dual;--12.8

    mysql> select floor(12.89*10)/10 from dual;--12.8000

              select floor(12.89) from dual;--12

              select ceil(12.89*10)/10 from dual;--12.9000

           select ceil(12.89) from dual;--13

              select round(12.89*10)/10 from dual;--12.9000

              select round(12.83*10)/10 from dual;--12.8000

              select round(12.89,1) from dual;--12.9

              select round(12.83,1) from dual;--12.8

    select format(12.89,1)/ from dual;--12.9

    select format(12.83,1)/ from dual;--12.8

    3.       日期时间函数

    Oracle> select sysdate from dual;--日期时间

    Mysql> select sysdate() ;--日期时间

              select current_date();--日期

          

    4.       Decode函数

    Oracle> select decode(sign(12),1,1,0,0,-1) from dual;---1

    Mysql> select case when sign(12)=1 then 1 when sign(12)=0 then 0 else -1 end;---1

    Mysql中好像没有decode函数所以只能用case-when来代替了

     

    5.       nvl 函数

    Oracle> select nvl(1,0) from dual ;----1

    Mysql> select ifnull(1,0) ; ------1

     

    今天就说这些吧,以后有新的发现再继续补上。。。。。。


    最新回复(0)