Учитывая tableA
в базе данных Postgres, мне нужно обновить несколько строк в поле column_a
:
UPDATE tableA
SET
column_a = CASE WHEN column_a = 'conserve' THEN column_a = 'fixed',
column_a = CASE WHEN column_a = 'balance' THEN column_a = 'moderate',
column_a = CASE WHEN column_a = 'balance growth' THEN column_a = 'moderate growth',
column_a = CASE WHEN column_a = 'aggressive' THEN column_a = 'moderate/agressive';
но я получаю следующую синтаксическую ошибку:
Error: syntax error at or near ","
Вы можете сделать это с помощью одного оператора CASE
:
UPDATE tableA
SET
column_a = CASE WHEN column_a = 'conserve' THEN 'fixed'
WHEN column_a = 'balance' THEN 'moderate'
WHEN column_a = 'balance growth' THEN 'moderate growth'
WHEN column_a = 'aggressive' THEN 'moderate/agressive'
END;
Попробуйте здесь.
Вам не хватает
END
:CASE..WHEN..THEN..END