您的位置:首页 > 数据库

sql 分页查询

2013-06-05 17:31 176 查看
今天终于手写了个分页查询的sql

绕过来了。

1.使用row_number()的 (SQL 2005+)

SELECT * FROM
(SELECT ROW_NUMBER() OVER (ORDER BY dbo.user_info.id ASC) AS rowid,* FROM dbo.user_info) AS t
WHERE t.rowid BETWEEN 21 AND 30


2.使用top的

SELECT * FROM (
SELECT TOP 10 * FROM (--取最终的10条记录
SELECT TOP 30 * FROM dbo.user_info ORDER BY id --取前n条
)AS t1
ORDER BY t1.id DESC)AS t2--倒序
ORDER BY t2.id--重新排列顺序
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: