当前位置:Gxlcms > mssql > 使用row_number()实现分页实例

使用row_number()实现分页实例

时间:2021-07-01 10:21:17 帮助过:41人阅读

代码如下:

create procedure p_News
@pageSize int,@pageIndex int
as
begin
select * from(
select *,Row_Number() over(order by Id) as [$Row_Num] from News
--where [$Row_Num]<=3 这个时候行号不能用,必须全部执行完毕以后才会产生
)as _temp where [$Row_Num] between (@pageIndex*pageSize+1) and (@pageIndex+1)*@pageSize
end
--注意参数的设置,java调用时 String sql="{call p_News(?,?)}"
--select Row_Number() over(order by id) RN,* from News where id ID>3 给最终的结果编一个号,一个连续的号
--order by必须写在括号里面,因为写在from News 后面会报 sql的错误:除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。

您可能感兴趣的文章:

  • sqlserver 通用存储过程分页代码(附使用ROW_NUMBER()和不使用ROW_NUMBER()两种情况性能分析)
  • 一个基于ROW_NUMBER()的通用分页存储过程代码
  • sqlserver2005使用row_number() over分页的实现方法
  • Oracle row_number() over()解析函数高效实现分页
  • C#拼接SQL语句 用ROW_NUMBER实现的高效分页排序
  • SQL2005利用ROW_NUMBER() OVER实现分页功能
  • 高效的SQLSERVER分页查询(推荐)
  • 解析数据库分页的两种方法对比(row_number()over()和top的对比)
  • SQLSERVER分页查询关于使用Top方式和row_number()解析函数的不同
  • SQL Server使用row_number分页的实现方法

人气教程排行