本篇文章给大家分享的是有关PostgreSQL怎么减少分页查询的时间,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
第一种
SELECT * FROM test_table i_id>1000限制100;
时间:0.016秒
引用>第二种
SELECT * FROM test_table限制100抵消1000;
时间:0.003秒
引用>第一种
SELECT * FROM test_table i_id>10000限制100;
时间:0.004秒
引用>第二种
SELECT * FROM test_table限制100抵消10000;
时间:0.508秒
引用>第一种:
SELECT * FROM test_table i_id>100000限制100;
时间:0.003秒
引用>第二种:
SELECT *,得到test_table limit 100年,OFFSET 100000; 时间:2.377秒 SELECT *,得到test_table WHERE c_act=& # 39;登录& # 39;,limit 100年,OFFSET 100000; 时间:3.649 s第一种:
SELECT * FROM test_table i_id>1000000限制100;
时间:0.004秒
引用>第二种:
SELECT * FROM test_table限制100抵消1000000;
时间:14.403秒
引用>第一种:
SELECT * FROM test_table i_id>10000000限制100;
时间:0.057秒
引用>第二种:
失去等待出来结果的耐心! ! !
<强>建议使用第一种分页方法~ 强>
<强>补充:postgreSQL数据库限制分页,排序强>
<强>限制分页语法:强>
select * from人限制抵消B;
引用><强>解释:强>
就是你需要显示多少行;
B就是查询的起点位置。
<强>示例:强>
select * from人限制5抵消0;
引用>意思是,起点0开始查询,返回5条数据。
select * from人限制15抵消5;
引用>意思是,起5点开始查询,返回15条数据。
<强>特殊:强>
select * from人限制5;
引用>这个就类似:
select * from人限制5抵消0;
引用>也就是,从起点0开始查询,返回5条数据。
按规则排序,同时也要分页:
select * from人order by lastname限制5抵消0;
引用>分页并显示行号,类似甲骨文里的rownum:
select *, row_number()()如rownum从人限制5抵消0;
引用>PostgreSQL怎么减少分页查询的时间