kez*_*kez 6 sql sql-server select group-by count
我有2个表,"T_COMMON_COUNTRY"和"T_HEI_STUDENTDATA".使用左连接我加入了这些表
这是我的疑问
SELECT
[T_COMMON_COUNTRY].[COUNTRY_ID],
[T_COMMON_COUNTRY].[COUNTRY],
[T_HEI_STUDENTDATA].[STUDENT_ID]
FROM ([T_COMMON_COUNTRY]
LEFT JOIN [T_HEI_STUDENTDATA]
ON [T_COMMON_COUNTRY].[COUNTRY] = [T_HEI_STUDENTDATA].[STDCOUNTRY])
Run Code Online (Sandbox Code Playgroud)
现在我得到这样的看法
| Country ID | County | Student ID |
| 1 | USA | 12 |
| 1 | USA | 5 |
| 2 | UK | 11 |
| 2 | UK | 2 |
Run Code Online (Sandbox Code Playgroud)
我想要计算一个国家的学生人数(Student_IDs),
我希望得到一个完全像下面的视图
| Country ID | County | Students |
| 1 | USA | 2 |
| 2 | UK | 2 |
Run Code Online (Sandbox Code Playgroud)
使用COUNT功能生成乡村学生计数
试试这个:
SELECT C.[COUNTRY_ID], C.[COUNTRY], COUNT(S.[STUDENT_ID]) AS StudentCount
FROM [T_COMMON_COUNTRY] C
LEFT JOIN [T_HEI_STUDENTDATA] S ON C.[COUNTRY] = S.[STDCOUNTRY]
GROUP BY C.[COUNTRY_ID], C.[COUNTRY];
Run Code Online (Sandbox Code Playgroud)