单个表上亿行数据的主键、索引设计,及分页查询( 三 )


单个表上亿行数据的主键、索引设计,及分页查询

文章插图
1 SELECT * FROM (2SELECT ROW_NUMBER() OVER (ORDER BY i.in_time desc,i.IN_SHEET_CD,i.in_uuid ) as rownum_xx3,i.*4from TT_FLOW_IN i5where i.in_time between to_date('2020-01-01 00:00' ,'yyyy-mm-dd hh24:mi') and to_date('2020-01-02 00:00' ,'yyyy-mm-dd hh24:mi')6and i.IN_SHEET_CD is not null7 ) xx8 WHERE rownum_xx >= 0 and rownum_xx <= 20;
单个表上亿行数据的主键、索引设计,及分页查询

文章插图
 
部分数据库 , 对于 SQL 标准 , 支持得不到位 。有的需要略改一下 , 比如 Oracle 的早期版本 , 能运行的 SQL 如下:
单个表上亿行数据的主键、索引设计,及分页查询

文章插图
1 SELECT * FROM (2SELECT ROW_NUMBER() OVER (ORDER BY i.in_time desc,i.IN_SHEET_CD,i.in_uuid ) as rownum_xx3,i.*4from TT_FLOW_IN i5where i.in_time between to_date('2020-01-01 00:00' ,'yyyy-mm-dd hh24:mi') and to_date('2020-01-02 00:00' ,'yyyy-mm-dd hh24:mi')6and i.IN_SHEET_CD is not null7 )8 WHERE rownum_xx >= 0 and rownum_xx <= 20;
差别在于第 7 行 。
 
=======欢迎转载 , 转载请注明出处 , https://www.cnblogs.com/jacklondon/
 
转载请注明出处: http://www.cnblogs.com/jacklondon ; 欢迎访问 http://www.zheguisoft.com/ 并提建议 。
【单个表上亿行数据的主键、索引设计,及分页查询】


推荐阅读