找到最大人口的城市

A.B*_*.B. 2 t-sql sql-server

我有一个测试表,看起来像:
在此输入图像描述

我想找到人口最多的城市.这是我的查询:

SELECT City, count(*) AS [Population]
INTO #stats
FROM [Customer]
GROUP BY City

SELECT City, [Population]
FROM #stats
WHERE [Population] = 
(
    SELECT max([Population])
    FROM #stats
)

DROP TABLE #stats
Run Code Online (Sandbox Code Playgroud)

是否可以在一个查询中执行,而不使用临时表?获得该结果的其他更短的实际方法是什么?

kjm*_*erf 5

是.您可以使用:

SELECT TOP 1
city, COUNT(*) AS population
FROM Customer
GROUP BY city
ORDER BY population DESC
Run Code Online (Sandbox Code Playgroud)

因此,只需使用您已经编写的查询来按城市推导人口,但只选择最高结果,并确保按人口按降序排序.