我正在尝试获取每个用户在 changes_cc
表中的条目数列表。并非所有用户都在其中进行了输入,但是由于某种原因,它为具有 0 个条目的每个用户返回“1”。我假设这是因为它正在计算 JOIN
ed 表中的条目。我怎样才能让它变成“0”呢?
SELECT COUNT(*) as num, users.id, realname, username
FROM changes_cc
RIGHT JOIN users
ON changes_cc.user_id = users.id
GROUP BY users.id
最佳答案
我认为这应该可行——计算 changes_cc 表中的特定字段与计算 *:
SELECT u.id, realname, username, COUNT(c.id) as num
FROM users u
LEFT JOIN changes_cc c
ON u.user_id = c.id
GROUP BY u.id
我更喜欢阅读 LEFT JOIN
而不是 RIGHT JOIN
,但它们都是 OUTER JOIN
并且工作方式相同。
关于mysql - 将 RIGHT JOIN 与 COUNT 相结合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15561811/