我试图找到 SQL Server 中特定列中的 n 个最大数字。
我们可以轻松找到一列中的最大值和第二大值。
但是我如何找到一列中的 5 个最大值呢?
您为 MySQL 和 SQL Server 都标记了它。在 SQL Server 中您可以使用TOP http://msdn.microsoft.com/en-us/library/ms189463.aspx:
SELECT TOP 5 yourColumn
FROM yourTable
ORDER BY someColumn DESC;
TOP
限制返回的行数。要获取具有最大/最小值的数据,您需要包含ORDER BY
.
在 MySQL 中你将使用LIMIT http://dev.mysql.com/doc/refman/5.0/en/select.html
在 SQL Server 中执行此操作的另一种方法是使用row_number()
:
select id
from
(
select id, row_number() over(order by id desc) rn
from yourtable
) x
where rn <= 5
See SQL 摆弄演示 http://sqlfiddle.com/#!3/b5755/4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)