在 Oracle 中,可以使用 ROW_NUMBER() 函数来分页。以下是不正确的分页方式:

Select* from xS where rownum>=#startnum# and rownum<#end num#order by cssj,xh desc;

这种方式存在缺陷,会导致数据不完整。

以下是正确的分页语句:

SELECT * FROM (
  SELECT t.*, ROW_NUMBER() OVER (ORDER BY cssj, xh DESC) AS row_num
  FROM xS t
) WHERE row_num >= #startnum# AND row_num < #endnum#;

使用 ROW_NUMBER() 函数可以确保分页结果的正确性和完整性,提高查询效率。

Oracle 分页查询最佳实践:ROW_NUMBER() 函数应用详解

原文地址: http://www.cveoy.top/t/topic/bfGW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录