gpt4 book ai didi

mysql - 仅考虑 COUNT 个特定 ID

转载 作者:行者123 更新时间:2023-11-29 07:19:34 28 4
gpt4 key购买 nike

我有几个类次,志愿者可以从至少 6 个类次中选择。我想知道有多少志愿者选择了每个类次。到这里为止很容易,但如果我只想考虑只选择 6 个类次的志愿者的 COUNT,那就更棘手了。

这就是我正在做的,但它根本不起作用:

SELECT COUNT(volunteer_id), shift_id 
FROM rota
WHERE volunteer_id IN (SELECT volunteer_id FROM rota HAVING
COUNT(volunteer_id) = 6)
GROUP BY shift_id;

编辑:

这是表格“rota”的示例。现实生活中有100个volunteer_id和15个不同的shift_id

id  volunteer_id   shift_id
1 1 3
2 1 2
3 1 1
4 2 1
5 2 2
6 2 7
7 2 12
8 2 5
9 2 6
10 3 2
11 3 3
n

预期的结果是这样的。 column volunteer_id 将只考虑在上表中选择了 6 个类次的志愿者:

shift_id      COUNT(volunteer_id)
1 5
2 32
3 12
4 9
n

最佳答案

这是将返回选择了 6 个类次的 volunteer_id 的查询:

SELECT volunteer_id FROM rota GROUP BY volunteer_id HAVING COUNT(shift_id) = 6

所以像这样使用它:

SELECT shift_id, count(distinct volunteer_id) counter FROM rota 
WHERE volunteer_id IN (
SELECT volunteer_id FROM rota GROUP BY volunteer_id HAVING COUNT(shift_id) = 6
)
GROUP BY shift_id

关于mysql - 仅考虑 COUNT 个特定 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56992883/

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