MySQL: вычислить ширину даты в столбце - PullRequest
0 голосов
/ 10 февраля 2019

Я хочу определить cron, который часто удаляет определенные данные из столбца MySQL, если дата в столбце date_added старше 60 дней, но не находит никакой информации, если MySQL поддерживает дату ширины вычисления.Возможно ли это, и если да, то как это сделать?

DELETE FROM 
vcount 
WHERE date_added - 60 days

date_added == datetime == 0000-00-00 00: 00: 00

Ответы [ 3 ]

0 голосов
/ 10 февраля 2019

Вы можете использовать функции date_add () или date_sub ():

where date_added < date_add(curdate(),INTERVAL -60 DAY)

или

where date_added < date_sub(curdate(),INTERVAL 60 DAY)

(многие предпочитают всегда использовать date_add (), используя отрицательный интервал для вычитания)

0 голосов
/ 10 февраля 2019

использовать DATE_SUB (дата, интервал значений INTERVAL)

дата: обязательно.Дата, которую нужно изменить

значение: обязательно.Значение интервала времени / даты для вычитания.Допустимы как положительные, так и отрицательные значения.

интервал: обязательно.Тип интервала для вычитания.Может принимать одно из следующих значений

:

МИКРОСЕКОНД

ВТОРОЙ

МИНУТА

ЧАС

ДЕНЬ

НЕДЕЛЯ

МЕСЯЦ

КВАРТАЛ

ГОД

ВТОРОЙ_MICROSECOND

MINUTE_MICROSECOND

MINUTE_SECOND

HOUR_MICROSECOND

HOUR_SECOND

HOUR_MINUTE

DAY_MICROSECOND

DAY_SECOND

DAY_MINUTE

1046 *1046* 1048 * YEAR_MONTH

DELETE FROM 
vcount 
WHERE date_added  < (DATE_SUB(NOW(), INTERVAL 60 DAY))
0 голосов
/ 10 февраля 2019

при условии, что ваш date_added является действительным столбцом даты, вы можете использовать date_sub

DELETE FROM 
vcount 
WHERE date_sub(date_added, INTERVAL 60 DAY);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...