gpt4 book ai didi

mysql - 在MYSQL中从另一列执行列计数

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

我有一个包含两列 meetID 和 caseID 的表。 MeetingID 可以来自三个类别之一,因此我使用子查询通过仅返回与该类别匹配的另一个表中的 meetID 来选择特定的类别。

一旦我有了这个 MeetingID 列表,我想计算其中有多少人拥有两个 caseID。我还需要从计数中排除一些 caseID,但这目前无关紧要。

这是我到目前为止的代码;

  SELECT COUNT( meetingID ) , meetingID
FROM case_meeting
WHERE meetingID
IN (

SELECT DISTINCT a.meetingID
FROM case_meeting a
INNER JOIN meeting b ON a.meetingID = b.meetingID
WHERE b.categoryID = '1'
)
GROUP BY meetingID
HAVING COUNT( caseID ) =2

我遇到的主要问题实际上是编写代码来成功计算具有两个 caseID 的 meetID 的数量,而不是返回它们的列表。

目前代码返回一个列表,其中行数与我想要的数字匹配,并且每行都是“2”

最佳答案

如果(meetingID, caseID) 上存在UNIQUE 约束:

SELECT cm.meetingID
FROM case_meeting AS cm
INNER JOIN meeting AS m
ON m.meetingID = cm.meetingID
WHERE m.categoryID = 1
GROUP BY cm.meetingID
HAVING COUNT(*) = 2 ;

如果没有,请将最后一行更改为:

HAVING COUNT(DISTINCT cm.caseID) = 2 ;

关于mysql - 在MYSQL中从另一列执行列计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14376649/

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