【发布时间】:2016-08-26 20:18:57
【问题描述】:
我想在我的结果集中包含一个带有行号序列的列 row_number,其中 1 是最新的项目,没有间隙。这有效:
SELECT id, row_number() over (ORDER BY id desc) AS row_number, title
FROM mytable
WHERE group_id = 10;
现在我想以 1000 个块为单位查询相同的数据,以便更容易记忆:
SELECT id, row_number() over (ORDER BY id desc) AS row_number, title
FROM mytable
WHERE group_id = 10 AND id >= 0 AND id < 1000
ORDER BY id ASC;
这里的 row_number 对于每个块都从 1 重新开始,但我希望它就像是全局查询的一部分,就像在第一种情况下一样。有没有简单的方法可以做到这一点?
【问题讨论】:
标签: sql postgresql pagination row-number postgresql-9.4