gpt4 book ai didi

mysql - 选择组,计算零

转载 作者:行者123 更新时间:2023-11-29 05:26:52 25 4
gpt4 key购买 nike

我有一个像这样的表 users:

id user refid
1 a null
2 b 1
3 c 1
4 d 2
5 f 3

我需要选择用户,按 id 分组,每个用户的每个 refid 的计数例如,

id    user count
1 a 2
2 b 1
3 c 1
4 d 0
5 4 0

这是我试过的:

SELECT u1 . id,u1 . user , count( u1.id ) count FROM users u1 
LEFT JOIN users u2 ON u1.id = u2.refid GROUP BY u1.id

返回

id    user count
1 a 2
2 b 1
3 c 1

我怎样才能让 mysql 返回那些 id 还没有被用作 refid 的那些?

最佳答案

这个有效:

SELECT u1 . id,u1 . user , count( u2.refid ) count FROM users u1 
LEFT JOIN users u2 ON u1.id = u2.refid GROUP BY u1.id

COUNT 只计算非空值,所以你需要在 u2 中指定一个列,因为当没有时那将是 NULL匹配。

FIDDLE

关于mysql - 选择组,计算零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19197338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com