gpt4 book ai didi

mysql - 使用MySQL计算存在和不存在的数量

转载 作者:可可西里 更新时间:2023-11-01 07:39:43 24 4
gpt4 key购买 nike

我正在尝试列出所有任务以及已完成/已完成任务的数量(在提交中)。问题是我还想显示所有没有用户完成的任务。此查询未列出 count = 0 (Null)。有什么办法吗?

想要的结果:

Date       | title   | completed
2014-05-20 | Case 1 | 45
2014-05-24 | Case 10 | 11
2014-05-20 | Case 2 | 0

到目前为止我已经尝试过:

Select date, title, count(*) as completed
from users u, submissions s, task t
where u.userPK = s.user
and s.task= t.taskPK
group by taskPK
order by completed desc;

Tables

最佳答案

您需要使用 OUTER JOIN 来获得您想要的结果。但是,考虑到前面的答案还不够,我猜你也不想 GROUP BY taskPK 字段,而是 datetitle 字段。

也许这就是您正在寻找的:

SELECT t.date, t.title, count(*) cnt
FROM task t
LEFT JOIN submissions s ON t.task = s.taskPK
GROUP BY t.date, t.title
ORDER BY cnt DESC

我还删除了 user 表,因为我不确定它如何影响结果。如果您需要它,只需添加一个额外的连接即可。

关于mysql - 使用MySQL计算存在和不存在的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23923583/

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