Sql server 2008 如何部分选择特定行?

Sql server 2008 如何部分选择特定行?,sql-server-2008,Sql Server 2008,我有一个包含100行的表。我想在一页中显示前10行,在另一页中显示下10行,依此类推。你能帮我怎么做吗?你可以这样做: WITH CTE AS ( SELECT Id, column1, ROW_NUMBER() OVER (ORDER BY Id) AS RowNum FROM yourtable ) SELECT Id, column1 FROM CTE WHERE RowNum

我有一个包含100行的表。我想在一页中显示前10行,在另一页中显示下10行,依此类推。你能帮我怎么做吗?

你可以这样做:

WITH CTE AS
(
    SELECT
        Id,
        column1,
        ROW_NUMBER() OVER (ORDER BY Id) AS RowNum
    FROM
        yourtable
)
SELECT
    Id,
    column1
FROM
    CTE
WHERE
    RowNum BETWEEN @Start AND @End

我使用了If条件,但它不起作用。您可以在存储过程中使用PageNo、RowsToDisplay等参数进行分页。谢谢,但如何操作呢。我需要一个例子“我使用了If条件”-您是否愿意将您的尝试编辑到问题中?