合并中的内部查询以设置空值
Posted
技术标签:
【中文标题】合并中的内部查询以设置空值【英文标题】:inner query in coalesce to set null values 【发布时间】:2016-10-21 09:08:57 【问题描述】:我是 postgres 的新手,我想将空字段设置为其他一些值。当我运行这个查询时,它工作正常:
SELECT COALESCE(Field,'xxx) from Table;
但是,我不想让所有这些字段都使用“xxx”,而是像这样填写它们:
SELECT COALESCE(Field,select id from user where user.id = someOtherTable.id) from Table;
在这一个中,我在选择附近遇到语法错误。
如何动态设置这些值?
【问题讨论】:
括号:SELECT COALESCE(Field, (select id from user where user.id = someOtherTable.id)) from Table;
【参考方案1】:
正如@Abelisto 在评论中所说,围绕内部查询的括号有效
【讨论】:
【参考方案2】:你的问题不是很清楚,但可能你正在寻找这样的东西:
UPDATE mytable m
SET field = COALESCE(field, o.value)
FROM someothertable o
WHERE m.id = o.id;
【讨论】:
以上是关于合并中的内部查询以设置空值的主要内容,如果未能解决你的问题,请参考以下文章