【发布时间】:2021-05-21 14:49:01
【问题描述】:
我有一个表,其中包含jsonb[] 类型的可选fields 列。我正在使用横向 unnest 将这些字段分成几行,然后使用聚合以我想要的顺序再次组合它们。
SELECT id, name, ARRAY_AGG(v ORDER BY v->'priority' DESC) as fields
FROM results, LATERAL UNNEST(fields) AS f(v)
GROUP BY 1, 2
但是因为fields 是可选的,所以并非所有行都具有要取消嵌套的值。有没有办法横向取消嵌套至少一行,即使它是空的?或者有没有更好的方法在退出时将订单应用于jsonb[] 列,这样我就可以一起避免这种横向不嵌套?
【问题讨论】:
标签: postgresql