gpt4 book ai didi

mysql - 从一个表中选择,从另一个没有链接的表中计数

转载 作者:行者123 更新时间:2023-12-01 00:38:16 24 4
gpt4 key购买 nike

表一

enter image description here

表2

enter image description here

预期输出

打开| 2

待定 | 0

关闭 | 0

等等....

我尝试使用下面的查询

SELECT d.status , COUNT(*) num,e.name  FROM table1 d  cross join table 2 e group by name;

这导致了

enter image description here

谁能帮我解决这个问题。

最佳答案

您需要一个左连接。这种类型的联接显示左表中的所有行,即使右表中不存在任何行也是如此。

select t2.name, count(t1.id)
from table2 as t2
left join table1 as t1 on t2.name = t1.status
group by t2.name

请注意,您需要聚合 table1 中的列以生成所需的 0,因此 count(t1.id)count(*) 将生成 1,即使 table1 中没有行也是如此。

您在查询中使用的交叉联接只是创建所涉及的两个表的笛卡尔积,导致左表中的每一行与右表中的每一行连接一次。

关于mysql - 从一个表中选择,从另一个没有链接的表中计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42197586/

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