限制 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
我有这个问题:
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