首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sql选择5个最高值

sql选择5个最高值
EN

Stack Overflow用户
提问于 2015-06-09 09:13:00
回答 3查看 157关注 0票数 2

我正在尝试选择具有最高count值的5行

这是我的疑问:

代码语言:javascript
复制
string sql = "SELECT   top 5  count FROM  Likes  ORDER BY COUNT(*) DESC";

只是抛出一个错误代码

列'Likes.count‘在select列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。

这是我明天要介绍的一个项目..。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-06-09 09:16:10

在Server上,只需执行以下操作:

代码语言:javascript
复制
 SELECT TOP 5 * FROM Likes ORDER BY [Count] DESC

这假设您的Likes-table已经包含了一个名为[Count]的列,这意味着您不需要自己计算记录(这就是COUNT(*)所做的)。

票数 5
EN

Stack Overflow用户

发布于 2015-06-09 09:17:14

这里不应该将COUNT(*)用于order by

代码语言:javascript
复制
SELECT   top 5  [count] FROM  Likes  ORDER BY [Count] DESC
票数 2
EN

Stack Overflow用户

发布于 2015-06-09 09:18:32

count是一个保留词,这就是为什么您应该避免在列名中使用它们。如果您不想重命名可以转义的列,不同的dbms可能会影响您这样做的人。在ssms中,您将使用方括号。

代码语言:javascript
复制
string sql = "SELECT   top 5  [count] FROM  Likes  ORDER BY COUNT(*) DESC";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30727773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档