2016-05-27 8 views

ответ

2

Просто поместите пункт in в set части:

update foo 
    set bar = (id in (1,2,3, ...)); 
1

Ваш ожидаемый результат может достичь CASE т:

UPDATE FOO SET bar = (CASE WHEN id IN (1, 2, 3....) THEN true 
          WHEN id NOT IN (1, 2, 3....) THEN false 
          ELSE NULL END) 
1

Вы можете использовать условные операторы в UPDATE запросов в Postgres: Conditional statements in Postgres.

UPDATE заявление может быть написано в следующей форме:

UPDATE 
    FOO 
SET 
    bar = CASE WHEN id IN (1, 2, 3...) 
    THEN true 
    ELSE false 
    END 
Смежные вопросы