在 Postgresql 中使用 IF 语句更新 table

Update table with IF statement in Postgresql

如何在 PostgreSQL 中执行此类查询?

update table1 set column9 = 
concat(
(if (b-a from table1)>1 then b-a else 0),',',
(if (c-b from table1)>1 then c-b else 0),',',
(if (d-c from table1)>1 then d-c else 0)
    )

像这样使用 CASE 表达式:

UPDATE table1 
SET column9 = CONCAT(
  CASE WHEN b-a > 1 then b-a ELSE 0 END, ',',
  CASE WHEN c-b > 1 then c-b ELSE 0 END, ',',
  CASE WHEN d-c > 1 then d-c ELSE 0 END
);

查看简化版 demo.