gpt4 book ai didi

sql - 对于表中不存在的 ID 显示 COUNT = 0

转载 作者:行者123 更新时间:2023-12-02 20:51:23 25 4
gpt4 key购买 nike

我需要统计一家公司的所有考试,如果考试表中不存在该公司,则返回 0。

在我的公司表中,我有 3 家公司。这是我的查询:

SELECT c.name, ISNULL(COUNT(e.ID), 0)
FROM Exam e
INNER JOIN Company c ON c.ID = e.COMPANY_ID
GROUP BY c.name

它返回 2 行,但我想显示检查表中没有任何记录的第三家公司。

我怎样才能做到这一点?

最佳答案

您需要一个 RIGHT 或更常见的 LEFT JOIN:

select
c.name,
COUNT(e.COMPANY_ID)
from
Company c left join Exam e
ON c.ID = e.COMPANY_ID
group by
c.name

左联接将返回左表 Company 中的所有记录,并且仅返回 Exam 表中匹配的记录。 Count 将计算所有非空值。

关于sql - 对于表中不存在的 ID 显示 COUNT = 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42160188/

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