sql 语法

DML:

SELECT - 从数据库表中获取数据

UPDATE - 更新数据库表中的数据

DELETE - 从数据库表中删除数据

INSERT INTO - 向数据库表中插入数据

 

DDL:

CREATE DATABASE - 创建新数据库

ALTER DATABASE - 修改数据库

CREATE TABLE - 创建新表

ALTER TABLE - 变更(改变)数据库表

DROP TABLE - 删除表

CREATE INDEX - 创建索引(搜索键)

DROP INDEX - 删除索引

 

SELECT column_name FROM TableName

SELECT * FROM TableName

 

SELECT LastName,FirstName FROM Persons

SELECT DISTINCT Company FROM Orders

SELECT * FROM Persons

WHERE (FirstName='Thomas' OR FirstName='William') AND LastName='Carter'

SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC, OrderNumber ASC

 

INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')

INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')

 

UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing'  WHERE LastName = 'Wilson'

 

DELETE FROM Person WHERE LastName = 'Wilson'

DELETE FROM TableName

 

SELECT TOP number|percent column_name(s) FROM TableName

SELECT column_name(s) FROM TableName LIMIT number

SELECT column_name(s) FROM TableName WHERE ROWNUM <= number

 

SELECT * FROM Persons WHERE City NOT LIKE '%lon%'

SELECT * FROM Persons WHERE LastName LIKE 'C_r_er'

SELECT * FROM Persons WHERE City LIKE '[!ALN]%'

 

SELECT * FROM Persons WHERE LastName IN ('Adams','Carter')

 

SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter'

 

SELECT column_name(s) FROM table_name AS alias_name  (表别名)

SELECT po.OrderID, p.LastName, p.FirstName

FROM Persons AS p, Product_Orders AS po

WHERE p.LastName='Adams' AND p.FirstName='John'

 

 

SELECT column_name AS alias_name FROM table_name   (列别名)

SELECT LastName AS Family, FirstName AS Name FROM Persons

 

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

FROM Persons, Orders

WHERE Persons.Id_P = Orders.Id_P

 

//INNER JOIN 与 JOIN 是相同的

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

FROM Persons

INNER JOIN Orders

ON Persons.Id_P = Orders.Id_P

ORDER BY Persons.LastName

 

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

FROM Persons

LEFT JOIN Orders

ON Persons.Id_P=Orders.Id_P

 

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

FROM Persons

RIGHT JOIN Orders

ON Persons.Id_P=Orders.Id_P

 

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo

FROM Persons

FULL JOIN Orders

ON Persons.Id_P=Orders.Id_P

 

SELECT E_Name FROM Employees_China

UNION SELECT E_Name FROM Employees_USA

 

SELECT E_Name FROM Employees_China

UNION ALL SELECT E_Name FROM Employees_USA

 

SELECT LastName,FirstName

INTO Persons_backup IN 'Backup.mdb'

FROM Persons

WHERE City='Beijing'

 

SELECT Persons.LastName,Orders.OrderNo

INTO Persons_Order_Backup

FROM Persons

INNER JOIN Orders

ON Persons.Id_P=Orders.Id_P

 

CREATE DATABASE database_name

 

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)

)

 

 

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)

)

 

ALTER TABLE Persons

ADD UNIQUE (Id_P)

 

ALTER TABLE Persons

ADD CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName)

 

ALTER TABLE Persons

DROP INDEX uc_PersonID

 

SELECT Customer,SUM(OrderPrice) FROM Orders

GROUP BY Customer

 

SELECT Customer,SUM(OrderPrice) FROM Orders

GROUP BY Customer

HAVING SUM(OrderPrice)<2000

INSERT INTO clients
(client_id,client_name,client_type)
SELECT supplier_id,supplier_name,'advertising'
FROM suppliers
WHERE not exists(select * from clients where clients.client_id=suppliers.supplier_id);

 

posted @ 2017-01-22 13:52  see_u  阅读(136)  评论(0编辑  收藏  举报