限制 postgresql 数组中的对象数量 jsonb_agg

limit amount of objects in array of postgresql jsonb_agg

我有这个问题:

SELECT jsonb_agg(jsonb_build_object('me_id', me_id)) from message

得到如下结果:

[{"me_id": 2064}, {"me_id": 2065}, {"me_id": 2066}, {"me_id": 2067}, {"me_id": 2068}, {"me_id": 2069}, {"me_id": 2070}, {"me_id": 2071}]

到目前为止一切顺利。但是我想限制数组中的对象数量。例如到 3。但是添加 LIMIT 3 是行不通的。

如何限制数组中对象的数量?

编辑: @GMB 的回答解决了它。谢谢!

您需要一个子查询:

select jsonb_agg(jsonb_build_object('me_id', me_id)) 
from (select * from message order by me_id limit 3) t