繁体   English   中英

用IF语句插入INSERT INTO

[英]postgresql INSERT INTO with IF statement

postgresql ,如何INSERTcolumn.a来自同一个表凡在column.b

IF column.a = 1 then column.b = foo, 
IF column.a = 2 then column.b = bar,
IF column.a = 3 then column.b = good,
IF column.a = 4 then column.b = bad

INSERT不会在列中插入值。 它将新行插入到表中。 相反,您需要使用UPDATE语句 您还需要在其中添加一些ifs

如果该行已经存在,则不需要INSERT 您需要这样的UPDATE

UPDATE your_table
SET b = CASE 
        WHEN a = 1 then 'foo'
        WHEN a = 2 then 'bar'
        WHEN a = 3 then 'good'
        ELSE 'bad'
        END
WHERE some_condition = 'true';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM