SELECT 在具有非顺序 (uuid) 主键的特定行之后

SELECT after specific row with non-sequential (uuid) primary key

与以下 table:

CREATE TABLE users (
    id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
    inserted_at timestamptz NOT NULL DEFAULT now()
    -- other fields
);

如何检索特定 id 之后按 inserted_at 排序的 n 行?

I want to retrieve n rows after a specific id, ordered by inserted_at.

我期待这样的事情:

select u.*
from users u
where u.inserted_at > (select u2.inserted_at from users u2 where u2.id = 'f4ae4105-1afb-4ba6-a2ad-4474c9bae483')
order by u.inserted_at
limit 10;

为此,您需要在 users(inserted_at) 上增加一个索引。