oracle sqlserver mysql_Oracle/Mysql/SqlServer 常用函数区别

1.类型转换

--Oracle

select to_number('123') from dual;  --123;

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

select to_date('2004-11-27','yyyy/mm/dd') from dual;--2004-11-27

--Mysql

select cast('123' as signed integer);   --123

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

select to_days('2000-01-01');       --730485

--SqlServer

select cast('123' as decimal(30,2));    --123.00

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

select convert(varchar(12) , getdate(), 120)

2.四舍五入函数区别

--Oracle

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

--Mysql

select format(12.89,1);         --12.9

--SqlServer

select round(12.89,1);          --12.9

3.日期时间函数

--Oracle

select sysdate from dual;       --日期时间

--Mysql

select sysdate();           --日期时间

select current_date();          --日期

--SqlServer

select getdate();           --日期时间

select datediff(day,'2010-01-01',cast(getdate() as varchar(10)));--日期相差天数

4.Decode函数

--Oracle

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

--Mysql/SqlServer

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

5.判空函数

--Oracle

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

--Mysql

select ifnull(1,0);         --1

--SqlServer

select isnull(1,0);         --1

6.字符串连接函数

--Oracle

select '1'||'2' from dual;      --12

select concat('1','2');         --12

--Mysql

select concat('1','2');         --12

--SqlServer

select '1'+'2';             --12

7.记录限制函数

--Oracle

select 1 from dual where rownum <= 10;

--Mysql

select 1 from dual limit 10;

--SqlServer

select top 10 1

8.字符串截取函数

--Oracle

substr('Hello World',0,1) //返回结果为 'H'  *从字符串第一个字符开始截取长度为1的字符串

substr('Hello World',1,1) //返回结果为 'H'  *0和1都是表示截取的开始位置为第一个字符

substr('Hello World',2,4) //返回结果为 'ello'

substr('Hello World',-3,3)//返回结果为 'rld' *负数(-i)表示截取的开始位置为字符串右端向左数第i个字符

--Mysql/SqlServer

select substring('12345',1,3);  //索引从1到3

8.把多行转换成一合并列

--Oracle

select wm_concat(列名) from dual; --多行记录转换成一列之间用,分割

--Mysql/SqlServer

select group_concat(列名);

9.利用查询结果创建表

--Oracle

CREATE TABLE dept_bak AS SELECT * FROM dept;

--Mysql/SqlServer

SELECT * INOT t1 FROM titles

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值