我正在尝试按SQL的特定类别和年份列出前25名的国家/地区,但是我很难弄清楚该怎么做。
例如,我具有国家和经济自由类别。我想在2016年列出25个经济自由国家。我该怎么做?
国家是varchar,经济自由也是varchar例如。(3.60) 这是用于Microsoft Sql Server。
答案 0 :(得分:0)
Select EconomicFreedom,count(*) from table group by EconomicFreedom having count(*) <=25 order by Countries desc;
分组依据是主要步骤
答案 1 :(得分:0)
听起来像您需要带有ORDER BY子句的常规SELECT TOP。请注意,您需要将经济自由度转换为数字数据类型,否则应将4> 10转换为数字数据类型,因为4>1。如果提供的信息也是如此,则应该是您的查询(如果Year也为列)。
SELECT TOP 25 [Country], [Economic freedom]
FROM Table
WHERE [Year] = 2016
ORDER BY CAST([Economic freedom] as float) DESC