SQL Server和MySQL常用SQL区别

数据库 SQL Server MySQL
SQLServer和MySQL都是大家常用的数据库,她们基本兼容SQL-92标准,但语法风格还是有一些不同,下面列举一部分两者常用SQL片段的差异,权当抛砖引云,其实两者之间的细微差异多着呢。

SQLServer和MySQL都是大家常用的数据库,她们基本兼容SQL-92标准,但语法风格还是有一些不同,下面列举一部分两者常用SQL片段的差异,权当抛砖引云,其实两者之间的细微差异多着呢。

 

 

查看表结构的方式

SQLServer方式: 

-- 查看系统内所有数据库  
SELECT name, database_id, create_date FROM sys.databases ;  
-- 查询数据库内所有表  
select * from sysobjects where xtype= 'U' ;  
-- 显示表结构  
sp_help/sp_columns 表名;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

MySQL方式: 

-- 查看系统内所有数据库  
show databases;  
-- 查询数据库内所有表  
show tables;  
-- 显示表结构desc 表名;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

语句结束符号

SQLServer的结束符号:

使用单行GO

分号;

什么都不写

MySQL的结束符号:

似乎一直都是用分号;。

返回前几条记录

SQL Server的写法是: 

select top n条 from 表;  
  • 1.
select top n percent from 表; 
  • 1.

MySQL的写法是: 

select * from 表 limit n; 
  • 1.

获取当前的日期时间

SQL Server的写法是: 

getdate(); 
  • 1.

MySQL的写法是: 

now(); 
  • 1.

循环支持

以1到100求和为例,我们看看两者实现的不同方式

SQL Server只有一个while循环,语法如下: 

DECLARE @I INT = 1;  
DECLARE @K INT = 0;  
WHILE @IBEGIN SET @K = @K + @I;  
SET @I = @I + 1;  
ENDSELECT @K;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

MySQL支持好几种,先看看While循环: 

DECLARE I,K INTDEFAULT 0 ;  
WHILE I SET K=I + K;  
SET I=I + 1;  
END WHILE;  
SELECT K;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

再看看MySQL的REPEAT UNTIL 循环循环: 

DECLARE I,K INTDEFAULT 0 ;  
REPEATSET K=I + K;  
SET I=I + 1;  
NTIL I>100END REPEAT;  
SELECT K;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

再看看MySQL的LOOP循环 

DECLARE I,K INTDEFAULT 0 ;  
LABEL: LOOPSET K=I + K;  
SET I=I + 1;  
IF I>100 THENLEAVE LABEL;  
END IF;  
END LOOP;  
SELECT K;  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.

细微区别太多,这里就不一一列举了。

责任编辑:庞桂玉 来源: 快资讯
相关推荐

2009-05-22 16:42:02

MS SQLMySQL转换

2010-10-15 13:49:34

mysql和sql s

2010-11-26 15:18:10

mysql变量赋值

2011-03-31 09:30:27

SQL Server数管理SQL

2010-11-08 13:04:36

SQL SERVER线

2010-07-15 09:14:32

SQL server组

2021-02-24 11:31:59

SQLServer数据库时间

2010-11-12 15:35:55

SQL Server约

2010-11-08 15:47:01

SQL Server外

2010-11-11 13:51:36

SQL Server内

2010-09-16 15:10:48

SQL Server表

2010-10-19 13:52:28

SQL Server事

2017-10-17 09:55:16

数据库SQL Server规范集锦

2010-06-28 11:06:04

SQL Server

2010-07-05 12:40:56

SQL Server

2010-06-30 14:54:42

SQL Server

2015-08-21 10:40:10

SQL Server备份还原

2010-07-22 13:59:14

MS SQL Serv

2010-07-13 10:43:26

SQL Server数

2010-07-22 13:45:35

SQL Server
点赞
收藏

51CTO技术栈公众号