SQL 谓词与集合函数使用指南
1. ALL 谓词的使用
ALL 谓词的工作方式与 ANY 和 SOME 谓词类似,它用于将列值与子查询的结果进行比较。不同的是,列值必须对所有子查询结果都满足条件,而不是只满足其中一些,否则该行不会被返回。
例如,将之前使用 ANY 谓词的示例替换为 ALL 谓词,新的 SELECT 语句如下:
SELECT Title, Sale FROM CDSale
WHERE Sale < ALL
( SELECT Retail FROM CDRetail WHERE InStock > 9 ) ;
执行该语句后,查询结果与之前使用 ANY 谓词时大不相同,仅返回三行:
| Title | Sale |
|-------------------------|-------|
| Blue | 12.99 |
| Kojiki | 13.99 |
| That Christmas Feeling | 10.99 |
这是因为只有这三行满足 WHERE 谓词的条件。以 Kojiki 行为例,其 Sale 值为 13.99,子查询结果包含 14.99、15.99 和 16.99,13.99 小于所有这些值,所以该行被包含在查询结果中。而 Past Light 行的 Sale 值为 14.99,不小于子查询中的 14.99 值,因此该行不被包含。
与 ANY 和 SOME 谓词一样,ALL 谓词可以使用六种比较运算符中的任何一种,并且可以创建任何类型的子查询,只要它与主
超级会员免费看
订阅专栏 解锁全文
16

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



