当前位置: 代码迷 >> SQL >> 实业完整性约束 参照完整性约束 左外连接 右外连接 关系表达式的优化 SQL
  详细解决方案

实业完整性约束 参照完整性约束 左外连接 右外连接 关系表达式的优化 SQL

热度:87   发布时间:2016-05-05 11:30:51.0
实体完整性约束 参照完整性约束 左外连接 右外连接 关系表达式的优化 SQL

实体完整性约束:关系的主码中的属性值不能为空值


参照完整性约束:如果关系R2的外部码Fk与关系R1的主码Pk相对应,则R2中的每一个元组的Fk值或者等于R1中某个元组的Pk值,或者为空值;意义:如果关系R2的某个元组t2参照了关系R1的某个元组t1,则t1必须存在;例如关系S在D#上的取值有两种可能:空值,表示该学生尚未分到任何系中,若非空值,则必须是DEPT关系中某个元组的D#值,表示该学生不可能分到一个不存在的系中


左外连接,表示左边的每一个元组必须出现!!!


关系表达式的优化,将选择和投影操作尽量移动到叶节点。。。

一些SQL的写法:

左外连接:


成绩最高的学生:





除法操作:

select SNAME from S where not exists(select CN from C where not exists (select * from SC where SC.CN = C.CN and SC.SN = S.SN ));







  相关解决方案