分页常适用于性能优化,如以下场景:
- 业务只需要获取部分数据,如top 10,此时查询所有数据到客户端,浪费数据库磁盘IO/网络IO、应用内存
- 数据量太大,传输时间可能过长甚至中断、查询到客户端内存开销巨大,每次只查询较小数量的行,分多次查询
PostgreSQL
中使用limit
实现分页查询。
语法与MySQL
类似,下面会对比说明(MySQL Limit
语法可参考《MySQL分页查询》)。
基本语法
SELECT * FROM table
LIMIT {row_count | row_count OFFSET offset}
如上所示,LIMIT
有两种用法。