Обновить как вставить

Можно ли выполнить обновление, например вставку ?

UPDATE `table` SET `value` ('N','N','N','N','Y','Y','Y','N', 'N') WHERE `my_id` = '1' 

Проблема в том, что количество значений, которые нужно вставить, я не сейчас. Это может быть 5 или 10. введите описание изображения здесь

Solutions Collecting From Web of "Обновить как вставить"

замените так же, как вставка, он просто проверяет наличие дубликата ключа, и если он удаляет строку и вставляет новую, в противном случае она просто вставляет

вы можете сделать это, если есть, например, уникальный индекс (Name, Type), и если вы наберете следующую команду

 REPLACE INTO table1 (Name,Type,InitialValue,FinalValue) VALUES ('A',3,50,90 ) 

и уже существует строка с именем = 'A' и Type = 3, она будет заменена

 CREATE UNIQUE INDEX idx_name_type ON table1(Name,Type) 

EDIT: быстрое примечание – ЗАМЕНИТЬ всегда DELETES, а затем INSERT, поэтому никогда не очень хорошая идея использовать его при большой нагрузке, потому что ему требуется эксклюзивная блокировка при ее удалении, а затем, когда она вставляет

некоторые из двигателей базы данных

INSERT … НА ОБНОВЛЕНИИ КЛЮЧА DUPLICATE …

Вы должны указать имя column-name .

 UPDATE `table` SET `Col1`='y',`Col2`='n' ... WHERE `ID`='1' 

Или хотите обновить один или несколько столбцов / строк:

 UPDATE `table` Set Col1='Y' WHERE `ID` IN ('1','11','13')