有什么干净的方法可以将项目附加到一对多关系中吗?

Is there any clean way to append items to a one-to-many relationship?

很无辜的问题

如果我们在 table 单元格中有一个项目数组,是否有任何方法可以将数据附加到它而无需获取整行的数据来获取其内容,以便终于把更新的数据推送到单元格了?

我有一个名为 content 的列,它是一个文件标识符数组,我想向其中追加一些新数据。

有什么干净的方法可以完成这个动作吗?或者我们需要在 update()?

之前执行 select()

创建一个单独的 table 来存储 1 到多个关系通常比将它们存储在数组中更好,但是话虽如此,您可以使用 [=11 将项目附加到数组=] 并调用您的 Postgres 函数。

您可以创建如下所示的函数来附加数组值:

create or replace function append_array(new_element text, id uuid)
returns void
as
$func$
    update array_table
    set array_element = array_append(array_element, )
    where id = 
$func$
language sql;

您可以阅读更多相关内容here