Postgresql: обновление возвращает булеву величину

Я действительно не понимаю, почему он возвращает 'false' в 99% случаев и 'true' в 1%.

Я пытаюсь преобразовать это поле в Foreign Key с помощью следующего запроса:

update public.cashflow_cashflow 
set level_2 = case 
when level_2 = 'Category1' then level_2 = '2'
when level_2 = 'Category2' then level_2 = '2'
when level_2 = 'Category3' then level_2 = '1'
when level_2 = 'Category4' then level_2 = '2'
when level_2 = 'Category5' then level_2 = '2'
else level_2 = ''
end;

Выдает таблицу следующего вида:

введите описание изображения здесь

Вы устанавливаете значения в результат сравнения.

Вместо этого сделайте следующее:

update public.cashflow_cashflow 
   set level_2 = case 
                   when level_2 = 'Category1' then '2'
                   when level_2 = 'Category2' then '2'
                   when level_2 = 'Category3' then '1'
                   when level_2 = 'Category4' then '2'
                   when level_2 = 'Category5' then '2'
                   else ''
                 end;
Вернуться на верх