Jos*_*rke 21
SQL Server 2005及更新版本:
with Records AS(select row_number() over(order by datecreated) as 'row', *
from Table)
select * from records
where row=5
Run Code Online (Sandbox Code Playgroud)
您可以更改顺序,以确定如何对数据进行排序以获取第五行.
在我本地安装上测试:Microsoft SQL Server 2005 - 9.00.4053.00(X64)2009年5月26日14:13:01版权所有(c)1988-2005 Microsoft Corporation Developer Edition(64位)在Windows NT 6.1上(Build 7600:)
Pau*_*lor 10
截至2005年,ROW_NUMBER()函数可用.
SELECT * FROM
(
SELECT r.*, ROW_NUMBER() OVER (ORDER BY SomeField ASC) AS RowNum
) sorty
WHERE RowNum = 5
Run Code Online (Sandbox Code Playgroud)
根据此链接,您有很多选择.所有这些技术都适用于SQL 2000.我之前使用过的是选项#1,你可以选择一个方向排序的5个元素的子集,然后选择另一个方式排序的子集中的"TOP"行.效果很好!
SELECT TOP 1 FName
FROM
(
SELECT TOP 5 FName
FROM Names
ORDER BY FName
) sub
ORDER BY FName DESC
Run Code Online (Sandbox Code Playgroud)
在SQL 2005及更高版本中它更容易 - 您有行排序函数,如ROW_NUMBER(),它将直接执行您所需的操作.
| 归档时间: |
|
| 查看次数: |
59968 次 |
| 最近记录: |