各种数据库的SQL的不同点

WBOY
リリース: 2016-06-07 14:59:28
オリジナル
1494 人が閲覧しました

今天复习数据库的SQL,想着需要总结下各种数据库的SQL的不同点,供总结查阅,供别人参考! 返回的记录的数目 1. SQL Server 的语法: SELECT TOP number|percent column_name(s) FROM table_name 2. MySql的语法: SELECT column_name(s) FROM table_name LI

今天复习数据库的SQL,想着需要总结下各种数据库的SQL的不同点,供总结查阅,供别人参考!

  • 返回的记录的数目

1. SQL Server 的语法:

SELECT TOP number|percent column_name(s)
ログイン後にコピー
FROM table_name
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. MySql的语法:

SELECT column_name(s)
ログイン後にコピー
ログイン後にコピー
FROM table_name
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
LIMIT number
ログイン後にコピー

3. Oracle的语法:

SELECT column_name(s)
ログイン後にコピー
ログイン後にコピー
FROM table_name
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
WHERE ROWNUM 
<p>注意:oracle ROWNUM不支持">="</p>
<h2>· SQL UNIQUE 约束</h2>
<p>1. MySQL:</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">
CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Id_P int NOT NULL,
ログイン後にコピー
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
UNIQUE(Id_P) 
ログイン後にコピー

2. SQL Server / Oracle / MS Access:

CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Id_P int NOT NULL UNIQUE,
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3. MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Id_P int NOT NULL,
ログイン後にコピー
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)
ログイン後にコピー
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

· SQL UNIQUE Constraint on ALTER TABLE

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ADD UNIQUE (P_Id)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ALTER TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ADD CONSTRAINT uc_PersonID UNIQUE (P_Id,LastName)
ログイン後にコピー

1. MySql:

ALTER TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
DROP INDEX uc_PersonID
ログイン後にコピー

2. SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
DROP CONSTRAINT uc_PersonID
ログイン後にコピー

这里只提供UNIQUE约束,PRIMARY KEY约束、FOREIGN KEY约束、CHECK约束类似。

· SQL AUTO INCREMENT 字段

1. MySql:

CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
P_Id int NOT NULL AUTO_INCREMENT,
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
PRIMARY KEY (P_Id)
ログイン後にコピー
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. SQL Server:

CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
P_Id int PRIMARY KEY IDENTITY,
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3.Access:

CREATE TABLE Persons
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
(
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
P_Id int PRIMARY KEY AUTOINCREMENT,
ログイン後にコピー
LastName varchar(255) NOT NULL,
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
FirstName varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
Address varchar(255),
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
City varchar(255)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
)
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

4. Oracle:

CREATE SEQUENCE seq_person
ログイン後にコピー
MINVALUE 1
ログイン後にコピー
START WITH 1
ログイン後にコピー
INCREMENT BY 1
ログイン後にコピー
CACHE 10
ログイン後にコピー
 
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
 
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
INSERT INTO Persons (P_Id,FirstName,LastName)
ログイン後にコピー
VALUES (seq_person.nextval,'Lars','Monsen')
ログイン後にコピー

1. SQL server/ MS Access

SELECT ProductName,UnitPrice*(UnitsInStock+ISNULL(UnitsOnOrder,0))
ログイン後にコピー
FROM Products
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. Oracle

SELECT ProductName,UnitPrice*(UnitsInStock+NVL(UnitsOnOrder,0))
ログイン後にコピー
FROM Products
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

3.MySql

SELECT ProductName,UnitPrice*(UnitsInStock+IFNULL(UnitsOnOrder,0))
ログイン後にコピー
FROM Products
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
 
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
 
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
SELECT ProductName,UnitPrice*(UnitsInStock+COALESCE(UnitsOnOrder,0))
ログイン後にコピー
FROM Products
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー


作者: Dxx23


関連ラベル:
ソース:php.cn
前の記事:(转)获取网购订单的12个技巧 次の記事:某数据集团数据库初试笔试题
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
関連トピック
詳細>
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート