【发布时间】:2013-03-24 21:35:46
【问题描述】:
我有两张桌子,想计算两张桌子上的身份证号码。一张表只有一个结果,但另一张表可能有更多。
select
a.ID,
count(a.ID),
count(b.ID)
from a
join b on
(b.ID=a.ID)
where a.ID='7820193'
group by a.ID
结果如下所示 ID 7820193 计数 (a.ID)=200 计数(b.ID)=200
但是,该 ID 号在一个实例中只有一个实例 我尝试过所有类型的连接(左、右、内) 我做错了什么?
【问题讨论】:
-
你到底想在这里做什么? mysql count函数用于统计select语句生成的记录总数。
-
我想知道每个表中ID的次数。在这种情况下,它在 a 中出现一次,在 b 中出现 200 次。出于某种原因,我每张桌子的总数都相同。
-
在没有 count 函数的情况下运行你的 select 语句,然后看看那里发生了什么。
-
我已经验证,如果我检查该 ID,则只有一个。如果我检查 b 的那个 ID 有 200。