как передать несколько значений для предложения WHERE в качестве одного аргумента

Я хочу обновить данные моей таблицы на основе результата запроса.

Структура базы данных следующая.

Название таблицы — Клиент

id | user_id | key | value

примерные данные следующие:

1 | 3434 | first_name | Brandon
2 | 3434 | last_name  | Johnson
3 | 3434 | street_add | 123 main
4 | 3434 | city       | ocean beach
5 | 3434 | state      | Texas

Мой запрос состоит в том, чтобы обновить результат значения на основе моего состояния.

UPDATE Customer
   SET key='abcd', value='efghg'
 WHERE id =2,4,5;

я получаю сообщение об ошибке: не удалось подготовить оператор (1 рядом с ",": синтаксическая ошибка)

Здесь я хочу передать несколько значений для id и сказать, какие значения, которые я передаю этим результатам, должны быть обновлены, как показано ниже. Итак, выходная таблица должна выглядеть так, как показано ниже.

Ожидаемый O/P

id | user_id | key | value

1 | 3434 | first_name | Brandon 
2 | 3434 | abcd       | efghg 
3 | 3434 | street_add | 123 main 
4 | 3434 | abcd       | efghg 
5 | 3434 | abcd       | efghg  

Как передать несколько значений для условия WHERE.


person user11614685    schedule 23.12.2019    source источник
comment
key — зарезервированное слово в MySQL   -  person Strawberry    schedule 23.12.2019


Ответы (1)


Предложение Where поддерживает IN для поддержки нескольких значений

UPDATE Customer SET key='abcd', value='efghg' WHERE id IN (2,4,5)
person PraveenB    schedule 23.12.2019