SQL 中的对象关系特性与多集运算符应用
1. SQL 多集运算符概述
在 SQL 语言里,多集运算符是一项重要的特性,它主要用于嵌套表的操作。多集和常规集合不同,在数学中,集合里的重复元素无意义,但在 SQL 的多集中,重复元素可能有实际意义,不能被忽略。以下是常见的 Oracle 多集运算符及其功能:
| 多集运算符或函数 | 描述 |
| — | — |
| nt1 MULTISET EXCEPT [DISTINCT] nt2 | nt1 和 nt2 的差集(等同于 MINUS 集合运算符) |
| nt1 MULTISET INTERSECT [DISTINCT] nt2 | nt1 和 nt2 的交集 |
| nt1 MULTISET UNION [DISTINCT] nt2 | nt1 和 nt2 的并集 |
| CARDINALITY(nt) | nt 中的行数 |
| nt IS [NOT] EMPTY | 布尔函数,用于检查 nt 是否为空 |
| nt IS [NOT] A SET | 布尔函数,用于检查 nt 是否包含重复元素 |
| SET(nt) | 从 nt 中移除重复元素 |
| nt1 = nt2 | 检查 nt1 和 nt2 是否相等 |
| nt1 IN (nt2, nt3, …) | 检查 nt1 是否出现在嵌套表列表中 |
| nt1 [NOT] SUBMULTISET OF nt2 | 检查 nt1 是否是 nt2 的子集 |
| r [NOT] MEMBER OF nt | 检查行 r 是否出现在表 nt 中 |
| CAST(COLLE
超级会员免费看
订阅专栏 解锁全文
2万+

被折叠的 条评论
为什么被折叠?



