Database
第1章
1.3.2 实例和模式
特定时刻存储在数据库中的信息的集合称作数据库的一个实例(instance)n. 实例;情况;建议
数据库的总体设计称为数据库模式(schema)
1.3.3 数据模型
关系模型(relation model)
实体-联系模型(entity-relationship model)
基于对象的数据模型(object-based data model)
空值(null)
第2章 关系模型介绍
2.1 关系数据库的结构
关系数据库由表(table)的集合构成,每个表有唯一的名字
在关系模型的术语中,关系(relation)用来指代表,而元组(tuple)用来指代行
。属性(attribute)指代列
第3章 SQL
建表语句
create table tableName(
columnName1 columnType, or AttributeName
columnName2 ...
);
完整性约束
primary key 声明主码,主键
foreign key references n. 参考,参照;涉及,提及;参考书目;介绍信;证明书
vi. 引用
vt. 引用
foreign key (dept_name) references (department)
not null
插入语句
insert into tableName values();
删除表数据 数据集合还在,类似于内存中还有声明,硬盘中还有集合块
删除元组
delete from tableName
where tableId = ;
删除表结构 数据集合被删除,被分配的区域没了
删除模式
drop table tableName;
使用alter table命令为已有关系增加属性。关系中的所有元组在新属性上的取值将被设为null
alter table tableName add columnName D
D是域
删除属性
alter table tableName drop A
查询
select columnName... from tableName,...
where子句
逻辑连词
and
or
not
比较运算符
<
<=
>
>=
<>
select子句用于列出查询结果中所需要的属性
from子句是一个查询求值中需要访问的关系列表
where作用于在from关系属性后的谓词
from子句的结果关系产生元组
for each 元组 in 关系
笛卡尔积
3.1 更名运算
起个别名
upper 字符串全大写
lower 小写
trim 去掉字符串后面的空格
vt. 修剪;整理;装点
vi. 削减
n. 修剪;整齐;情形
adj. 整齐的
like
百分号(%):匹配任意字符串
下划线(_):匹配任意一个字符
escape vt. 逃避,避开,避免;被忘掉;被忽视
来定义转义字符
反斜线(\)
like 'ab\%cd%' escape '\'
3.4.5 where子句谓词
between ...and ...
相当于 [1,2] 的闭区间
3.5 集合运算
union n. 联盟,协会;工会;联合/intersect vi. 相交,交叉/except vt. 不计;把…除外
并、交、除了
差运算
distinct元组去重
3.7 聚集函数
聚集函数是以值的一个集合(集或多重集)为输入,返回单个值的函数
平均值:avg
最小值:min
最大值:max
总和:sum
计数:count
sum和avg的输入必须是数字集,但其他运算符还作用在非数字类型上
3.7.2 分组聚集
group by子句中给出的一个或多个属性是用来构造分组的
使用分组,最重要保障select语句中但没有被聚集的属性只能是出现在group by子句中的那些属性
换言之,任何没出现在group by子句中的属性出现在select中只能在聚集函数中
3.7.3 having子句
针对group by子句构成分组
having子句中的谓词在形成分组后才起作用
select dept_name,avg(salary) avg_salary from instructor n. 指导书;教员;指导者
--where
group by dept_name
having avg(salary) > 42000;
3.8 嵌套子查询
in 属于
not in 不属于
from子句子查询
where子句 子查询
insert into tableName select * from tableName;
update tableName set columnName = case
when 条件 then result1
else result0
end
第4章 中级SQL
视图
create view view_name as select...
4.4.3 unique约束
unique adj. 独特的,稀罕的;[数] 唯一的,独一无二的
n. 独一无二的人或物
4.6 授权
授予
grant 权限列表 on 关系名(表名)或视图名
收回
revoke 权限列表
第5章 高级SQL
存储过程 声明方法 返回值 结束
create function/procedure n. 程序,手续;步骤 .Name
高速缓存
优化