概述
在sqlserver中,数据库的分页一般结合top 和 not in 来实现,但这必须是表中只有一个主键,如果有多个主键该怎么做呢
现在有一个表A
里面有字段
name
schoolyear
text
其中name 和 schoolyear为主键
如果要查询 pagesize 条数据,第 page 页
解决方案:
用row_number()函数来实现
SELECT TOP pagesize * FROM
(SELECT ROW_NUMBER() OVER (ORDER BY name) AS RowNo,* FROM A)
WHERE RowNo > (page - 1) * pagesize
这种方法的思路:
ROW_NUMBER() 可以生成一个顺序的行号,OVER (ORDER BY name) 是根据name来排行号
最后
以上就是和谐西装为你收集整理的sqlserver 数据分页 多个主键的全部内容,希望文章能够帮你解决sqlserver 数据分页 多个主键所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复