我正在尝试选择具有最高count值的5行
这是我的疑问:
string sql = "SELECT top 5 count FROM Likes ORDER BY COUNT(*) DESC";只是抛出一个错误代码
列'Likes.count‘在select列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。
这是我明天要介绍的一个项目..。

发布于 2015-06-09 09:16:10
在Server上,只需执行以下操作:
SELECT TOP 5 * FROM Likes ORDER BY [Count] DESC这假设您的Likes-table已经包含了一个名为[Count]的列,这意味着您不需要自己计算记录(这就是COUNT(*)所做的)。
发布于 2015-06-09 09:17:14
这里不应该将COUNT(*)用于order by。
SELECT top 5 [count] FROM Likes ORDER BY [Count] DESC发布于 2015-06-09 09:18:32
count是一个保留词,这就是为什么您应该避免在列名中使用它们。如果您不想重命名可以转义的列,不同的dbms可能会影响您这样做的人。在ssms中,您将使用方括号。
string sql = "SELECT top 5 [count] FROM Likes ORDER BY COUNT(*) DESC";https://stackoverflow.com/questions/30727773
复制相似问题