目录
4.1 SQL语言概述
4.1.1 SQL语言的发展过程
4.1.2 SQL语言的特点
(1)一体化
(2)高度非过程化
(3)面向集合的操作方式
(4)提供多种方式使用
(5)语言简洁
4.1.3 SQL语言的功能
可分为4大部分:数据定义,数据查询,数据操纵和数据控制。
4.2 SQL支持的数据类型
1.数值型
2.日期时间型
3.字符串型
4.其他类型
4.3 数据定义功能
4.3.1 数据库的定义
1.数据库创建 : CREATE DATABASE
2.数据库修改 :ALTER DATABASE
3.数据库删除:DROP DATABASE
4.3.2 架构的定义
将4.3.1代码中DATABASE改成SCHEMA
4.3.3表的定义
CREATE TABLE
ALTER TABLE
DROP TABLE
且可以添加约束
NOT NULL非空,PRIMARY KEY主键,FOREIGN KEY外键,UNIQUE输入非重复,DEFAULT默认,CHECK限制取值范围
4.4 数据查询功能
4.4.2 单表查询
SELECT 对应 投影 Π
其中:用IN,NOT IN确定集合;(NOT)LIKE模糊查询;OR,AND来多重条件查询
FROM 对应 笛卡尔积 ×
WHERE 对应 选择σ
排序:用ORDER BY <列名>
聚合函数:COUNT,SUM,AVG,MAX,MIN
分组:GROUP BY <分组依据列> HAVING <组提取条件>
4.4.3 多表连接查询
1.内连接:
FROM 表1 [INNER] JOIN 表2 ON <连接条件>
2.自连接:
物理上一个表逻辑上生成两个表
FROM 表1 AS T1
FROM 表2 AS T2
3.外连接:
形似S.Sno=SC.Sno
4.Top语句
在sqlyog中应用LIMIT
4.4.4 CASE表达式
CASE 测试表达式
WHEN 表达式1 THEN 结果表达式2
END
4.4.5 将查询结果保存表中
ANY 和 ALL
WHERE [NOT] EXISTS
4.5 视图
基本操作
CREATE VIEW
ALTER VIEW
DROP VIEW
4.6 数据更改功能
插入INSERT [INTO] <表名> VALUES (值列表)
更新UPDATE <表名> SET <列名>
删除DELETE [FROM] <表名>
4.7 数据控制功能
授权GRANT TO
回收授权 REVOKE FROM
拒权 DENY TO