在**关系代数(Relational Algebra)**中,**差运算(Difference)**用来求出属于一个关系但不属于另一个关系的元组。
差运算通常用符号 − 表示(有的教材也用 \ 或 MINUS)。
若 ( R ) 和 ( S ) 是两个关系,则:
[ R - S ]
表示:在 R 中但不在 S 中的元组集合。
差运算要求:
否则差运算无定义。
设关系:
则:
[ R - S = {张三} ]
表示“未及格的学生”。
差运算是集合差: [ R - S = R \cap \overline{S} ] (在关系代数中通常不显式写补集,而是直接用差)
查询“选修了课程 A 但没选修课程 B 的学生”:
[ \pi_{学号}(\sigma_{课程=‘A’}(选课)) - \pi_{学号}(\sigma_{课程=‘B’}(选课)) ]
如果你愿意,我也可以帮你把差运算和 SQL 的 EXCEPT / NOT IN / NOT EXISTS对照讲解。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。