hello stackoverflow.Событие MYSQL ОБНОВЛЕНИЕ значений
ive уже несколько часов оглядывается по сети, и я сказал, что вы знаете, что - люди обычно не хотят, чтобы вы это делали, но плохо делайте это.
Я пытаюсь достичь события в MYSQL, чтобы каждый час проверял, соответствует ли какой-либо из столбцов, содержащих временную метку unix, метку времени, которая составляет более 1 месяца/3 месяца/6 месяцев/старше, чем текущее время. и если изменить значение
В основном есть 3 колонки
purchase_date
является старая меткаshop_type
является колонка принятия решения, если его 1/3/6 месяцев быть 1, 2 или 3 соответственноshop_status
является колонна установлена на «2», если временная отметка старше требования выше
ID узнать события прямо сейчас но я серьезно нужно только его 1 раз и я уверен, другие пользователи могут найти эту нить интересную
«макете код»
Event every 1 hour
if (shop_type == "1" && (CURRENT_TIMESTAMP-purchase_date) >= 1month)
UPDATE shop_status == "2"
if (shop_type == "2" && (CURRENT_TIMESTAMP-purchase_date) >= 3months)
UPDATE shop_status == "2"
if (shop_type == "3" && (CURRENT_TIMESTAMP-purchase_date) >= 6months)
UPDATE shop_status == "2"
я знаю, что люди ненавидят людей вроде меня, но иногда нужно просто сделать это, потому что никто другой не поможет вам. надеюсь, что вы understand..the синтаксис события немного странно
Просто написать 'SELECT' запрос, который находит строки, которые вы хотите, и запустить его с помощью планировщик событий. – Barmar
, но я не знаю, как найти правильные совлады из-за текущей метки времени. – asker0111
Вам не обязательно быть таким горьким, когда задавайте вопрос. Вы спрашиваете, как адаптировать эту логику к MySQL? Что-то вроде 'UPDATE tablename SET shop_status = 2 WHERE shop_type = 1 AND purchase_date> =?' Где '?' Является датой месяц назад? – tadman