我正在尝试使用计算根据一些条件更新列。
我使用的理论如下;如果 column1 包含“string”,则“column2 和 column3 的计算”将放入 column4。
计算有效,但我正在努力寻找一种方法来使用这些 IF 条件和 SUM 来更新列。
我搜索了堆栈和 postgres 文档。我看到有许多聚合错误,但没有一个专门解决这个问题。
UPDATE table1
SET "column4" = CASE
WHEN "column1" ILIKE '%Y%' THEN SUM(CAST("column2" AS
numeric(4,2))) / SUM(CAST("column3" AS numeric(4,2)))
END;
Run Code Online (Sandbox Code Playgroud)
我得到的错误如下;
错误:更新第 7 行中不允许使用聚合函数:WHEN "column1" ILIKE '%Y%' THEN (SUM(CAST("...
postgresql ×1