coalesce中的内部查询以设置空值

时间:2016-10-21 09:08:57

标签: postgresql coalesce

我是postgres的新手,我想将null字段设置为其他值。当我运行此查询时,它工作正常:

SELECT COALESCE(Field,'xxx) from Table;

但是,不要使用&xxx; xxx'对于所有这些领域,我想像这样填充它们:

SELECT COALESCE(Field,select id from user where user.id = someOtherTable.id) from Table; 

在这一篇中,我在select附近收到语法错误。

如何动态设置这些值?

2 个答案:

答案 0 :(得分:0)

您的问题不太清楚,但可能您正在寻找类似的内容:

UPDATE mytable m
SET field = COALESCE(field, o.value)
FROM someothertable o
WHERE m.id = o.id;

答案 1 :(得分:0)

@Abelisto在评论中说,围绕内部查询的parantheses工作