2014-12-31 5 views
1

Мне нужно изменить значение определенного поля/столбца нескольких записей и между конкретными датами в таблице MySQL. Использование Workbench MySQL v5.2. Так, например, мне нужно проверить, превышает ли значение x между двумя конкретными датами. Если он равен x, тогда мне нужно сделать его = y. Я пытался выполнить приведенное ниже описание, которое не работает. Это дает мне ошибку в предложении WHERE.Изменение нескольких значений в таблице MySQL

UPDATE `mydb`.`mytable` WHERE `Time_Stamp` 
BETWEEN '2014-12-31 00:00:00' 
    AND '2014-11-31 06:00:00' 
IF `my_Column` > x Then 
    `my_Column` = y 
End IF; 

Даже если он принимает предложение WHERE, я не уверен, что оператор IF будет работать после этого. Как видите, я ученик. Поэтому любая помощь была бы высоко оценена.

ответ

1

Попробуйте это:

UPDATE mydb.mytable 
SET my_Column = CASE WHEN my_Column > x THEN y ELSE x END 
WHERE Time_Stamp BETWEEN '2014-12-31 00:00:00' AND '2014-11-31 06:00:00' 
+1

Отлично Saharsh, который работал отлично. Спасибо за вашу помощь. – dfh

Смежные вопросы