带计数的SQL Server查询返回null或无结果

时间:2013-03-27 17:14:03

标签: sql sql-server

我有以下查询:

SELECT Centre.Centre_Name, Count(Shop_No) AS shopcount FROM Centre INNER JOIN Space ON Centre.Centre_Name = Space.Centre_Name GROUP BY Centre.Centre_Name

我需要它从中心表返回中心列表,并从Space表返回每个中心的商店数量。因此,它计算Space表中shop_no的数量,并返回中心名称加上每个中心的商店数量。但是,如果某个中心在Space表中尚未分配任何商店,则它不会从Center表中返回中心名称。如果空间表中不存在中心,我需要它返回0。

请告知:)

1 个答案:

答案 0 :(得分:5)

使用LEFT JOIN代替INNER JOIN

SELECT Centre.Centre_Name, Count(Shop_No) AS shopcount 
FROM Centre 
    LEFT JOIN Space ON Centre.Centre_Name = Space.Centre_Name 
GROUP BY Centre.Centre_Name