在SQL Server 2008 R2中使用偏移(分页)查询进行选择的正确方法



我想从我的视图中选择数据,以取消分页并在注册日期之前订购。

我在下面有代码示例。

SELECT student_id,student_name 
FROM student 
WHERE student_id IN(
                 SELECT TOP 15 student_id 
                 FROM student(
                         SELECT ROW_NUMBER() OVER (ORDER BY register_date_time DESC) AS rowNo,student_id
                         FROM student
                        ) tb_pagination WHERE rowNo > 30
                 )

我的代码运行正确,但是从服务器到客户端请求的响应太慢。

有人可以告诉我如何使它变得更好吗?

尝试以下:

SELECT student_id,student_name 
FROM (
        SELECT ROW_NUMBER() over (ORDER BY register_date_time DESC) AS rowNo, 
        student_id, 
        student_name
        FROM student
    ) tb_pagination
WHERE rowNo > 30 
AND rowNo < 45

最新更新