sqlserver 和MySQL的一些函数的区别
2017-08-30 17:18
363 查看
相同的表数据在sqlserver和MySQL中使用各自的函数得到相同的结果,如下表
要想查询出如下结果
在sqlserver中需要以下语句查询
在MySQL中需要以下代码查询
这里不是说MySQL比sqlserver好用,只是总结相同的数据在两个数据库中使用不同的方法函数得到相同的结果。
例如如下sql
还有sqlserver 的SUBSTRING和mysql的SUBSTR
drop table tb; create table tb(id int, value1 varchar(10), value2 varchar(20)); insert into tb values(1,'aa','11'); insert into tb values(1,'bb','22'); insert into tb values(2,'aaa','111'); insert into tb values(2,'bbb','222'); insert into tb values(2,'ccc','333');
要想查询出如下结果
在sqlserver中需要以下语句查询
1 SELECT id,stuff( ( SELECT ',' + VALUE1 FROM tb AS t WHERE t.id = tb.id FOR xml path ('') ), 1, 1, '' ) as VALUE1, stuff( ( SELECT ',' + VALUE2 FROM tb AS t WHERE t.id = tb.id FOR xml path ('') ), 1, 1, '' ) as VALUE2 FROM tb GROUP BY id
在MySQL中需要以下代码查询
1 select id, group_concat(value1)value1,group_concat(value2)value2 from tb group by id;
这里不是说MySQL比sqlserver好用,只是总结相同的数据在两个数据库中使用不同的方法函数得到相同的结果。
例如如下sql
-- 得到两个日期之间相差的月份数,也可以得到相差天数,只需要替换函数中第一个参数,注意各函数参数的取值范围,有兴趣的试下其他的。 1 select DATEDIFF(M,'20160506','20170606');-- sqlserver 2 select TIMESTAMPDIFF(MONTH,'20160506','20170606');-- mysql
-- 第二个参数是否包含第一个参数,如果包含返回1,不包含返回0 1 select charindex('a','abcd');-- sqlserver 2 select LOCATE('a','abcd');-- mysql
还有sqlserver 的SUBSTRING和mysql的SUBSTR
1 create table test2 as select * from test1;-- mysql 2 select * into test2 from test1;-- sqlserver
相关文章推荐
- mysql与sqlserver的一些语法、数据类型、关键字区别
- 实习日志(15):SQLServer与MySQL语句的一些区别
- 浅谈 sqlserver 和 mysql存储过程、函数的区别
- Oracle和Mysql中Sql语句中的一些函数用法区别
- 浅谈 sqlserver 和 mysql存储过程、函数的区别
- mysql_fetch_array()和mysql_fetch_assoc()两个函数的区别
- MySQL一些函数
- 分表用到的一些函数/php mysql 前面补0
- MySQL的一些其他插入数据的方式,顺便给大家脑补一点基本函数的使用
- mysql_fetch_array()和mysql_fetch_assoc()两个函数的区别
- MySQL的FROM_UNIXTIME()和UNIX_TIMESTAMP()函数的区别
- MySQL 和 Oracle SQL的一些基本语法和函数
- MySQL 的存储过程 procedure 与 函数 function 的区别和使用方法
- 关于分页,SQLServer中的top、MySql中的limit、Oracle中的rownum的区别?
- MySQL中SYSDATE()和NOW()函数的区别和联系
- 关于MySQL常用的一些函数以及一些计算
- mysql和sqlserver在使用update inner join时的区别
- SQLServer、MySQL存储过程的参数以及存储过程中变量区别,@
- Oracle和SQL Server的一些区别(函数和存储过程)
- mysql 和 redis的一些区别