免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2576 | 回复: 3
打印 上一主题 下一主题

临时表可以用EXISTS吗? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-08-23 17:02 |只看该作者 |倒序浏览
#1和#2的表结构是一模一样的,请问最后的记录数为什么是0啊?请各位大师们指点一下,谢谢!

select count(*) from #1
-----------
350         

(1 row(s) affected)

select count(*) from #2
-----------
308         

(1 row(s) affected)
SELECT count(*) FROM #1 A WHERE NOT exists (SELECT * FROM #2)
-----------
0           

(1 row(s) affected)

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
2 [报告]
发表于 2010-08-24 12:49 |只看该作者
只要SELECT * FROM #2能够返回结果。 你得到的结果就是:0

你可以把#2的数据都删掉后试试。

论坛徽章:
0
3 [报告]
发表于 2010-08-25 09:21 |只看该作者
exists(query)
函数所体现的意思就是,假如存在,那么就是TRUE,如果不存在那么就是FALSE。
将你所写的SQL进行分析一下
不加条件
SELECT count(*) FROM #1 A
加上条件
WHERE NOT exists (SELECT * FROM #2)
这个条件是什么意思,我们得了解。
SELECT * FROM #2存在着记录,那么exists (SELECT * FROM #2)的结果就是为TRUE

SELECT count(*) FROM #1 A WHERE exists (SELECT * FROM #2)等同于
SELECT count(*) FROM #1 A where 1=1等同于
那么如果加上NOT,not exists (SELECT * FROM #2)的结果就是FALSE
SELECT count(*) FROM #1 A WHERE NOT exists (SELECT * FROM #2)等同于
SELECT count(*) FROM #1 A WHERE 1=2

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
4 [报告]
发表于 2010-08-25 09:32 |只看该作者
SELECT count(*) FROM #1 A WHERE exists (SELECT * FROM #2)等同于
SELECT count(*) FROM #1 A where 1=1等同于
那么如果加上NOT,not exists (SELECT * FROM #2)的结果就是FALSE
SELECT count(*) FROM #1 A WHERE NOT exists (SELECT * FROM #2)等同于
SELECT count(*) FROM #1 A WHERE 1=2

必须在表#2内有记录的情况下才能成立。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP