all any 或 此运算符后面必须跟_SQL ANY and ALL 运算符

SQL ANY and ALL 运算符

SQL ANY和ALL 运算符

ANY和ALL运算符与WHERE或HAVING子句一起使用。

如果任何子查询值满足条件,则ANY运算符返回true。

如果所有子查询值满足条件,则ALL运算符返回true。

ANY 语法

SELECT column_name(s)

FROM table_name

WHERE column_name operator ANY

(SELECT column_nameFROM table_name WHEREcondition);

ALL 语法

SELECT column_name(s)

FROM table_name

WHERE column_name operator ALL

(SELECT column_nameFROM table_nameWHERE condition);

注意:所述的操作符必须是标准比较运算符(=,<>,=,>,> =,

演示数据库

以下是Northwind示例数据库中“Products”表的选择:

ProductID

ProductName

SupplierID

CategoryID

Unit

Price

1

Chais

1

1

10 boxes x 20 bags

18

2

Chang

1

1

24 - 12 oz bottles

19

3

Aniseed Syrup

1

2

12 - 550 ml bottles

10

4

Chef Anton's Cajun Seasoning

2

2

48 - 6 oz jars

22

5

Chef Anton's Gumbo Mix

2

2

36 boxes

21.35

并从“OrderDetails”表中选择:

OrderDetailID

OrderID

ProductID

Quantity

1

10248

11

12

2

10248

42

10

3

10248

72

5

4

10249

14

9

5

10249

51

40

SQL ANY 实例

如果任何子查询值满足条件,则ANY运算符返回TRUE。

以下SQL语句返回TRUE并列出产品名称,如果它在OrderDetails表中找到Quantity= 10的任何记录:

实例

SELECT ProductName

FROM Products

WHERE ProductID = ANY (SELECT ProductID FROM OrderDetails WHERE Quantity = 10);

以下SQL语句返回TRUE并列出产品名称,如果它在OrderDetails表中找到Quantity> 99的任何记录:

实例

SELECT ProductName

FROM Products

WHERE ProductID = ANY (SELECT ProductID FROM OrderDetails WHERE Quantity > 99);

SQL ALL 实例

如果所有子查询值满足条件,则ALL运算符返回TRUE。

如果OrderDetails表中的所有记录的Quantity= 10,则以下SQL语句返回TRUE并列出产品名称:

实例

SELECT ProductName

FROM Products

WHERE ProductID = ALL (SELECT ProductID FROM OrderDetails WHERE Quantity = 10);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值