> 其他 >
SQL语句理解 select * from B where (select count(1) as num from A where A.ID = B.ID) = 0
select * from B where (select count(1) as num from A where A.ID = B.ID) = 0
请问如何理解,为什么 可以在B表中 排除A表的数据
人气:385 ℃ 时间:2020-02-06 06:06:55
解答
子查询中select count(1) as num from A where A.ID = B.ID
就是统计B表和A表用ID连接的行数
子查询的行数=0,就可以实现从B表中排除A表数据子查询只是把计数传过去啊 主查询如何得知具体数据行?nono, 这么看:select * from B where ?= 0where中条件其实是,什么等于0?代入(select count(1) as num from A where A.ID = B.ID)就是A和B通过ID连接后,COUNT(*)计数=0select count(1) as num from A where A.ID = B.ID不等于0啊
推荐
猜你喜欢
© 2026 79432.Com All Rights Reserved.
电脑版|手机版