我有两个表,A
并且由字段引用,因此任何值都存在于.B
A
B
A.id_b B.id
id_b
B.id
我有三个查询: 第一个:
SELECT COUNT(b.id)
FROM B b
WHERE b.id NOT IN (
SELECT a.id_b
FROM A a)
它给了我0
;
第二个,区别仅在于NOT
:
SELECT COUNT(b.id)
FROM B b
WHERE b.id IN (
SELECT a.id_b
FROM A a)
这个查询给了我:1899
第三个:
SELECT COUNT(b.id)
FROM B b
这个查询给了我3599
相同的结果:
SELECT a.id_b
FROM A a
保证我B.id
分成两组,并且两组中的元素计数必须有很多总元素计数,但我有:1899 + 0 != 3599。
那怎么可能?