如何在共享同一GROUP BY的SQL中使用多个COUNT语句?
我有以下输出正确数据的语句如何在共享同一GROUP BY的SQL中使用多个COUNT语句?,sql,join,count,Sql,Join,Count,我有以下输出正确数据的语句 SELECT COUNT (Section_ID) AS Sections FROM Section GROUP BY Location; SELECT COUNT (e.Section_ID) AS Students FROM Section s, Enrollment e WHERE s.Section_ID = e.Section_ID GROUP BY Location; 这个语句也输出了正确的数据 SELECT COUNT (Sectio
SELECT COUNT (Section_ID) AS Sections
FROM Section
GROUP BY Location;
SELECT COUNT (e.Section_ID) AS Students
FROM Section s, Enrollment e
WHERE s.Section_ID = e.Section_ID
GROUP BY Location;
这个语句也输出了正确的数据
SELECT COUNT (Section_ID) AS Sections
FROM Section
GROUP BY Location;
SELECT COUNT (e.Section_ID) AS Students
FROM Section s, Enrollment e
WHERE s.Section_ID = e.Section_ID
GROUP BY Location;
然而,当我这样把这些陈述放在一起时
SELECT Location, COUNT(s.Section_ID) AS Sections, COUNT (e.Section_ID) AS Students
FROM Section s, Enrollment e
WHERE s.Section_ID = e.Section_ID
GROUP BY Location;
各部分和学生现在共享相同的数据。如何将这些语句组合在一起?首先,切勿在
FROM
子句中使用逗号。始终使用正确、明确的JOIN
语法
其次,记住COUNT()
的作用。它统计非空值的数量
一种方法是使用COUNT(DISTINCT)
:
我必须猜测注册的主键是什么。我猜首先,不要在
FROM
子句中使用逗号。始终使用正确、明确的JOIN
语法
其次,记住COUNT()
的作用。它统计非空值的数量
一种方法是使用COUNT(DISTINCT)
:
我必须猜测注册的主键是什么。我猜
学生ID
正确,这是学生ID。非常感谢,这完美地修复了它。正确,这是学生ID。非常感谢,这完美地修复了它。