row_number() over()分页查询

1、首先讲下row_number() over() 是干什么的?

是一个分析函数,会在数据表生成一个排序列。

案例SQL:

select ROW_NUMBER() over(order by bookId) as Idd, * from BookInfo 


select * from BookInfo

如下图实例:

2、使用row_number() over()分页查询数据

select * from (select ROW_NUMBER() over(order by bookId) as Idd,*from BookInfo )q where q.Idd >0 and q.Idd<=2

本人觉得这种分页方法简便,一直也在用这个方法(使用row_number() over()产生的排序列也能清晰看到取的数据),网上也有很多种分页实现的方法,做了下对比觉得这个用着比较爽。

猜你喜欢

转载自www.cnblogs.com/tao-1/p/10212592.html