SQL循序渐进(22)EXISTS 和 ALL
来源:互联网 发布:淘宝美工每天工作内容 编辑:程序博客网 时间:2024/06/07 08:14
EXISTS使用了一个子查询作为条件,只有当子查询返回行的时候这个条件才为真,如果子查询不返回任何的行条件就为假。如果商店在处理Chair的时候,有个顾客想看看所有拥有者的列表,就可以使用EXSIST,语句如下:
SELECT OWNERFIRSTNAME, OWNERLASTNAME
FROM ANTIQUEOWNERS
WHERE EXISTS
(SELECT *
FROM ANTIQUES
WHERE ITEM = 'Chair');
如果在Antiques列中有Chair,那么子查询就会返回一行或者多行,就使得EXISTS子句为真,然后让SQL列出拥有者来。如果没有搜索到Chair,则没有行被返回,条件就为假。
ALL是另外一个不寻常的关键字,因为ALL查询通常可以用不同的方法来进行,并且可能是一种更为简单的方法。举个例子来说明吧:
SELECT BUYERID, ITEM
FROM ANTIQUES
WHERE PRICE >= ALL
(SELECT PRICE
FROM ANTIQUES);
上面这条语句将返回最高价格的Item以及它的买方。子查询返回了Antiques表中的所有的Price列,而外层的查询逐行查询Antiques表,并且如果它的Price大于等于(或者ALL)列中的Prices,它就会被列出,它就是最好价格的Item。这里必须使用">="的原因是最高价格的Item要等于列表中的最高价格,因为这个Item在Price列中。<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- SQL循序渐进(22)EXISTS 和 ALL
- 【sql改写】exists any all
- SQL - exists和not exists
- LINQ to SQL语句之Group By/Having和Exists/In/Any/All/Contains
- sql exists和in两种写法 any,all的使用
- LINQ to SQL语句之Group By/Having和Exists/In/Any/All/Contains
- SQL exists 和in
- [SQL]in和exists
- sql exists 和in
- sql exists和not exists用法
- sql exists和not exists用法
- sql 的EXISTS和NOT EXISTS
- sql exists和not exists用法
- sql exists和not exists用法
- SQL 子查询 EXISTS 和 NOT EXISTS
- sql中exists和not exists用法
- SQL之EXISTS和NOT EXISTS
- SQL循序渐进
- 编写和建立存储过程,并定义合适的过程返回状态码和信息
- 情尽桥
- 又一次生日
- SQL循序渐进(24)嵌入SQL
- 如何从深层递归中跳出?
- SQL循序渐进(22)EXISTS 和 ALL
- Spring的事务,经典配置
- VML Chart 控件
- 用Javascript制作一个可自动填写的文本框(二)
- SQL循序渐进(20)Aliases 、In以及子查询
- 用Javascript制作一个可自动填写的文本框(全文完)
- JavaScript对象与数组参考大全
- 怎样用Javascript获得IE临时目录
- Mysql数据备份一(简易备份)