postgresql查询第x到y条数据

在后台分页中常用到如需要查询第6-10条数据,在这里记录一下在postgresql中的写法。
首先我们有一个待查询的表test如图
postgresql查询第x到y条数据_第1张图片
然后要取出第6-10条数据,我们的sql查询语句如下

select * from test order by id limit 5 offset 5

如果是mysql数据库,sql应该这样写

select * from test order by id limit 5,5

查看一下运行结果
postgresql查询第x到y条数据_第2张图片
可以看到确实达到了我们想要的结果。

接下来解释一下SQL语句

select * from test [order by id] limit x offset y

(mysql的SQL)

select * from test [order by id] limit y,x

其中 order by id 可按实际需要自行选择是否添加
x为需要显示的数量
y为去除前y条,即从y+1条开始显示
假设要查询第11-15条,SQL语句应为

select * from test order by id limit 5 offset 10

你可能感兴趣的:(SQL)