【发布时间】:2016-09-16 03:17:32
【问题描述】:
我有一个非常基本的一对多关系。有“节点”,每个节点都涉及多个“选项”。我正在做一个相当简单的连接,我的结果是这样的:
content | optionid | content
--------------------------+----------+------------------
This is the node content | 1 | This is option 1
This is the node content | 2 | This is option 2
但是,因为它是一对多的,所以每一行都有相同的节点内容:This is the node content。当我只需要一次时,每行返回相同的值似乎是多余的。有没有更好的办法?
【问题讨论】:
-
您可以使用很多不同的aggregate functions。例如,如果
optionid是唯一的,json(b)_object_agg可以很好地为您工作。 -
冗余是否对您造成了伤害?例如,它会减慢您的速度吗?
-
@Sevanteri 谢谢你告诉我这个!
jsonb_object_agg正是我想要的。如果您将其发布为答案,我会接受。
标签: database postgresql join database-design one-to-many