Mysql update нескольких строчек по условию

Иногда нужно обновить в таблице MySql n-ое количество строк. Причем вставить не одно значение, а несколько в зависимости от условия.

Запрос будет таким

UPDATE tbl_name  SET fld = CASE

WHEN pid=16 THEN '1'

WHEN pid=17 THEN '2'

WHEN pid=19 THEN '54'

ELSE fld END;

Причем если не поставить в конце ELSE fld, то все не подходящие по условию значения будут обнулены.

Для вставки синтаксис проще

INSERT INTO mytable (id, title) VALUES ('1', 'val1'), ('2', 'val2');


MarkiMarta.ru. Записки отца-программиста" с 2009 г.
Категория информационной продукции 18+
Яндекс.Метрика