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被当作无符号数。 CONV以64位点精度工作。
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
今天就说这些吧,以后有新的发现再继续补上。。。。。。
1 楼 mengqingyu 2010-01-13
字符串连接不同 mysql是concat(”,”) oracle是||
查找前10条 mysql是limit 10 oracle是rownum <= 10