SQL 基础教程
SQL高级教程(一)
SQL高级教程(二)
UNION
- 用于合并两个或多个 SELECT 语句的结果集
- UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同
- UNION 操作符选取不同的值,UNION ALL允许重复
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
SELECT E_Name FROM Employees_China
UNION
SELECT E_Name FROM Employees_USA
SELECT INTO
- 从一个表中选取数据,然后把数据插入另一个表中,常用于创建表的备份复件或者用于对记录进行存档
SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_tablename
SELECT LastName,Firstname
INTO Persons_backup
FROM Persons
WHERE City='Beijing'
CREATE
CREATE DATABASE database_name
CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)
约束
- NOT NULL 强制字段始终包含值
- UNIQUE PRIMARY KEY 强制唯一性
- 每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束
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)
)
ALTER TABLE Persons
#增加 UNIQUE 约束
ADD UNIQUE (Id_P)
#撤销 UNIQUE 约束
DROP INDEX uc_PersonID
ALTER TABLE Persons
ADD CONSTRAINT pk_PersonID PRIMARY KEY (Id_P,LastName)
- FOREIGN KEY 指向另一个表中的 PRIMARY KEY,用于预防破坏表之间连接的动作
CREATE TABLE Orders
(
Id_O int NOT NULL,
OrderNo int NOT NULL,
Id_P int,
PRIMARY KEY (Id_O),
FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)
)
ALTER TABLE Orders
ADD FOREIGN KEY (Id_P)
REFERENCES Persons(Id_P)
ALTER TABLE Orders
DROP FOREIGN KEY fk_PerOrders
- CHECK 用于限制列中的值的范围
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (Id_P>0)
)
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
)
ALTER TABLE Persons
ADD CHECK (Id_P>0)
ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')
- DEFAULT 用于向列中插入默认值
CREATE TABLE Persons
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)
ALTER TABLE Persons
ALTER City SET DEFAULT 'SANDNES'
ALTER TABLE Persons
ALTER City DROP DEFAULT