SQL Server和MySQL常用SQL区别

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

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

 

 

查看表结构的方式

SQLServer方式: 

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

MySQL方式: 

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

语句结束符号

SQLServer的结束符号:

使用单行GO

分号;

什么都不写

MySQL的结束符号:

似乎一直都是用分号;。

返回前几条记录

SQL Server的写法是: 

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

MySQL的写法是: 

  1. select * from 表 limit n; 

获取当前的日期时间

SQL Server的写法是: 

  1. getdate(); 

MySQL的写法是: 

  1. now(); 

循环支持

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

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

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

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

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

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

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

再看看MySQL的LOOP循环 

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

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

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

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-09-16 15:10:48

SQL Server表

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-10-19 13:52:28

SQL Server事

2010-07-05 12:40:56

SQL Server

2017-10-17 09:55:16

数据库SQL Server规范集锦

2010-06-28 11:06:04

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

2022-02-09 10:07:03

LinuxSQL Server

2010-07-13 10:43:26

SQL Server数
点赞
收藏

51CTO技术栈公众号