分页结果,SQL Server查询不同

时间:2010-01-05 12:41:58

标签: sql-server-2005 subsonic

如何区分分页查询的结果?我想要使​​用SQL Server 2005分页方法

分页
SELECT * FROM
   (SELECT ROW_NUMBER() OVER (ORDER BY [dbo].[Tbl_Kartabl].[FKLoginID]) AS Row, [dbo].[Tbl_Kartabl].[FKLoginID] 
    FROM [dbo].[Tbl_Kartabl]) AS PagedResults 
WHERE Row >= 1 AND Row <= 10 

我该怎么做?

如何在SubSonic 2中实现此功能?

1 个答案:

答案 0 :(得分:3)

在最里面的查询(from子句)中,您需要使用select distinct或使用group by在排序之前仅提取唯一元素。

SELECT [Row], [FKLoginID]
FROM (SELECT ROW_NUMBER() OVER ( ORDER BY T.[FKLoginID]) AS Row, T.[FKLoginID]
    FROM (SELECT DISTINCT [FKLoginID] FROM [dbo].[Tbl_Kartabl]) AS T ) AS PagedResults
    WHERE Row >= 1 AND Row <= 10