Previous Entry Share Next Entry
кстати, как бы это сделать
1
white_thesis wrote in ru_mysql
Не первый раз сталкиваюсь с задачей такого типа
Надо пробежаться по таблице и сделать замены вида
if (col_a == 255) set col_a = null;
if (col_b == 0) set col_b = col_c/3;
if (col_z < 0) set col_z = 200;
Независимые замены в каждой строке.

Это же можно как-то сделать за один прогон по таблице?
Одним update-ом, а не тремя ( в данном примере ).

  • 1
Хм. А ведь сработает.
Пожалуй при этом включать условие "where col_z=<0 OR col_b=0" уже нет необходимости.
Спасибо.

Я бы всё-таки условие воткнул, хоть и чисто из косметических соображений

  • 1
?

Log in