跳过未排序列表中的行

Skip rows in an unsorted list

我有一个显示列表的 Angular 应用程序和一个提供数据的 Scala API。我遇到了一个问题(语言无关紧要,只是逻辑问题)。

问题是我从中获取数据的 table 没有主键。因为我需要在一个小部件(table 类型)中不带排序地显示数据,就像在数据库中一样,我只是做“SELECT * FROM table LIMIT 30”。

问题是当我想更改页面时,我的查询变成了 SELECT * FROM table OFFSET 30 LIMIT 30

ERROR: OFFSET can not be used without an ORDER BY option.

如何解决这个问题?

如错误所述,您必须有一个 order by 子句才能使用 offset 子句。如果您没有任何有意义的方式对 table 进行排序,您可以选择任意值,例如第一列:

SELECT * FROM sometable ORDER BY column1 OFFSET 30 LIMIT 30