获取某一行数据

比如:

 

DECLARE @t AS TABLE([Datas] NVARCHAR(40))
INSERT INTO @t ([Datas]) VALUES(N'DF'),(N'W4F'),(N'EYY'),(N'ER'),(N'GFF'),(N'A445')

SELECT [Datas] FROM @t ORDER BY [Datas]
Source Code

 

由于我们不清楚Datas数据内容,它是动态的内容。但是我们需要获取这表中的某一笔记录,那如何获取呢?

可以使用ROW_NUMBER方法来求得:

 

SELECT [Datas] FROM (
    SELECT ROW_NUMBER() OVER (ORDER BY [Datas]) AS [RowNumber], [Datas] FROM @t) AS t
WHERE [RowNumber] IN (2,5)
Source Code

 

以下内容于2019-05-16 08:00:02.397更新:

使用CTE替代子查询。

 

posted @ 2019-05-12 16:20  Insus.NET  阅读(680)  评论(0编辑  收藏  举报