在本教程中,将学习如何使用SQL Server ANY运算符将值与子查询返回的单列值集进行比较。
SQL Server ANY运算符简介
ANY运算符是一个逻辑运算符,它将标量值与子查询返回的单列值集进行比较。
以下是ANY运算符的语法:
scalar_expression comparison_operator ANY (subquery)
在上面语法中,
scalar_expression- 是任何有效的表达式。comparison_operator- 是任何比较运算符。subquery是一个SELECT语句,它返回单个列的结果集,其数据与标量表达式的数据类型相同。
假设子查询返回值列表v1,v2,...,vn。 如果ANY比较(scalar_expression,vi)返回TRUE,则ANY运算符返回TRUE。 否则它返回FALSE。
请注意,SOME运算符等效于ANY运算符。
SQL Server ANY运算符示例
请参阅示例数据库中的以下products表,结构如下所示:

以下示例查找销售订单中销售数量超过2个的产品:
SELECT
product_name,
list_price
FROM
production.products
WHERE
product_id = ANY (
SELECT
product_id
FROM
sales.order_items
WHERE
quantity >= 2
)
ORDER BY
product_name;
执行上面查询语句,得到以下结果:

上一篇:
SQL Server子查询语句
下一篇:
SQL Server集合操作符
