DBMS也支持关系集运算符。关系集的主要运算符是并集,交集和集差。所有这些都可以使用不同的查询在DBMS中实现。
使用给定示例详细描述的关系集运算符如下-
学生号码 | 学生姓名 | 学生分数 |
1 | 约翰 | 95 |
2 | 玛丽 | 80 |
3 | 达蒙 | 57 |
学生号码 | 学生姓名 | 学生分数 |
2 | 玛丽 | 50 |
3 | 达蒙 | 98 |
6 | 马特 | 45 |
Union将查询获得的两个不同结果合并为表格形式的单个结果。但是,如果对它们应用联合,结果应该相似。联合会从数据中删除所有重复项(如果有),并且仅显示不同的值。如果结果数据中需要重复值,则使用UNION ALL。
联合的一个例子是-
Select Student_Name from Art_Students UNION Select Student_Name from Dance_Students
这将在表格Art_Students和Dance_Students中显示所有学生的姓名,即John,Mary,Damon和Matt。
相交运算符给出相交的两个数据集之间的公共数据值。相交的两个数据集应该相似,以使相交运算符起作用。交集还会在显示结果之前删除所有重复项。
交集的一个例子 是-
Select Student_Name from Art_Students INTERSECT Select Student_Name from Dance_Students
这将在表Art_Students和表Dance_Students中显示学生的姓名,即所有参加过艺术和舞蹈课程的学生。在此示例中为Mary和Damon。
集合差异运算符采用两个集合,并返回第一集合中的值,而不是第二集合中的值。
设置差异的一个例子 是-
Select Student_Name from Art_Students MINUS Select Student_Name from Dance_Students
这将在表Art_Students中显示所有学生的姓名,而不在表Dance_Students中显示所有学生的姓名,即,参加艺术课但不参加舞蹈课的学生。
在这个例子中就是约翰。