Как изменять определенное поле во всех записях с 1 на 0? - MySQL
Формулировка задачи:
Есть поле, которое может принимать значения 0 или 1. Каждый день, в 00:00 это поле, в каждой строчке таблицы, нужно изменять на 0, если оно было 1. Как это осуществить?
Решение задачи: «Как изменять определенное поле во всех записях с 1 на 0?»
textual
Листинг программы
CREATE EVENT clearFlag ON SCHEDULE EVERY 1 DAY STARTS '2016-01-20 00:00:00' DO UPDATE test SET `flag` = 0 WHERE `flag` = 1
Объяснение кода листинга программы
В данном коде создается событие в базе данных, которое будет выполняться ежедневно начиная с 20 января 2016 года в 00:00:00 по времени сервера.
- Название события:
clearFlag - Задачи, которые должно выполнять событие:
- Обновить таблицу
test - Установить значение поля
flagравным 0 - Применить обновление только к записям, где значение поля
flagравно 1 Таким образом, ежедневно в указанное время в таблицеtestбудет выполняться обновление, в результате которого полеflagбудет установлено равным 0 для всех записей, где в данный момент оно равно 1.
- Обновить таблицу