|
知识路径: > 数据库技术 > 数据库标准语言—SQL > 数据查询 >
|
考试要求:掌握
相关知识点:15个
|
|
|
|
在关系代数中可以用集合的并、交和差来组合关系。SQL也提供了对应的操作,但是查询的结果必须具有相同的属性和类型列表。保留字UNION、INTERSECT和EXCEPT分别对应∪、∩和一。保留字用于两个查询时,应该将每个查询分别用括号括起来。为了便于理解,下面通过举例说明。
|
|
|
|
假设某银行关系模式Branch(分行)、Customer(客户)、Loan(贷款)、Borrower(贷款联系)、Account(账户)和Depositor(存款联系)如下:
|
|
|
|
上述关系模式中,Customer-no表示客户的身份证号,带下画线的是主键属性。
|
|
|
与SELECT子句不同的是UNION运算自动去除重复,即某客户在银行中有几个账户或贷款(或两者均有),那么在结果集中也只出现一次。如果需要保留重复,必须用UNION ALL,示例如下:
|
|
|
|
查询结果出现重复元组数等于在查询语句①和②中出现的重复元组的和,如某客户Customer-no为“100982000011112124”在银行有2个账户3笔贷款,那么在结果集中有五个元组含有“100982000011112124”。
|
|
|
|
|
|