gpt4 book ai didi

mysql - 列表中的每个值在另一个表的列中出现的次数。数据库

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

我有一个 id 值表,需要计算每个 id 在另一个表的列中出现的次数。

我已经想出如何只对至少出现一次的值执行此操作:

SELECT one.id, COUNT(*) FROM table1 one, table2 two WHERE one.id = two.id GROUP BY one.id;

但无法弄清楚如何也包括出现在第一个但根本不出现在第二个表中的 ID。

示例:

table1:       table2:

+-----+ +-----+
| id | | id |
+-----+ +-----+
| 11 | | 11 |
| 12 | | 12 |
| 13 | | 14 |
| 14 | | 11 |
+-----+ | 11 |
| 12 |
+-----+

结果是:

+-----+----------+
| id | count(*) |
+-----+----------+
| 11 | 3 |
| 12 | 2 |
| 14 | 1 |
+-----+----------+

我正在努力让它也包括 | 行13 | 0 |

最佳答案

您正在执行不鼓励的隐式内部联接。相反,您需要的是左连接,例如:

SELECT one.id, COUNT(two.id) 
FROM table1 one LEFT JOIN table2 two
ON one.id = two.id
GROUP BY one.id;

关于mysql - 列表中的每个值在另一个表的列中出现的次数。数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29319839/

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