1.查询SELECT
SELECT fields FROM tablename WHERE condition
完整格式:
SELECT [DISTINCT] 目标表的列名工列表达式序列
FROM 基本表名或视图名序列
[WHERE 行条件表达式]
[GROUP BY 列名1序列[HAVING 组条件表达式]]
[ORDER BY 列名2[ASC|DESC]序列]
WHERE子句的行条件表达式中可使用的运算符有
算术比较运算符:AND,OR,NOT
集合运算符:UNION(并),INTERSECT(交),EXCEPT(差)
集合成员资格运算符:IN,NOT IN
谓词:EXISTS(存在量词),ALL,SOME,UNIQUE
聚合函数:AVG,MIN,MAX,SUM,COUNT
数据分组
GROUP BY 子句和HAVING子句
聚合函数
COUNT(*) 计算元组的个数
COUNT(列名) 对一列中的值计算个数
SUM(列名) 求某一列值的总和(此列的值必须是数值)
AVG(列名) 求某一列值的平均值(此列的值必须是数值)
MAX(列名) 求某一列值的最大值
MIN(列名) 求某一列值的最小值
集合操作
a.并,交,差
当两个查询结果的结构完全相同时,我们可以让这两个子查询执行并,交,差操作.
并:
(SELECT 查询语句1)
UNION [All]
(SELECT 查询语句2)
//All没写的话,会自动消除重复元组
交:
(SELECT 查询语句1)
INTERSECT [All]
(SELECT 查询语句2)
差:
(SELECT 查询语句1)
EXCEPT [All]
(SELECT 查询语句2)
b.比较操作
(1):集合成员资格比较
元组 IN (集合)
元组 NOT IN (集合)
(2):集合成员的算术比较
元组 & SOME(集合)
元组 & ANY(集合)
(3):空关系的测试
EXISTS (集合)
NOT EXISTS(集合)
(4):重复元组的测试
UNIQUE(集合)
NOT UNIQUE(集合)
2.插入INSERT
a.插入单个元组
INSERT INTO tablename(fields) VALUES(values)
b.插入多个元组
INSERT INTO tablename(fields) VALUES((values),(values))
//另一种形式,插入子查询的结果
INSERT INTO tablename(fields) SELECT ...
3.修改UPDATE
UPDATE tablename SET fields=values WHERE condition
//如果省略WHERE子句,则表示要修改表中的所有元组
4.删除DELETE
DELETE FROM tablename WHERE condition
//DELETE语句只能从一个关系中删除元组,而不能一次从多个关系中删除元组
要删除多个元组,就要写多个DELETE语句