Я хочу удалить все строки старше 5 дней в моей таблице.
В моей таблице есть столбец createdOn типа date, который может предложить мне запрос.
Я использую базу данных mySql
теперь я написал folloiwng query
SELECT * from `user_games` where created_on >= DATE_SUB(created_on, INTERVAL 5 DAY)
для просмотра user_games, которым исполнилось пять дней
но всегда получаю тот же результат, даже когда я запускаю запрос для Invterval 1 Day или Interval 5 day
в то время как сегодня curdate – 2011-5-2
Попробуй это,
delete from mytable where datediff(now(), mytable.date) > 5
Это будет правильный подход к удалению.
Используйте функцию date_sub, например:
delete from `myTable` where createdOn<DATE_SUB(curdate(), INTERVAL 5 DAY);
Вы хотите сделать это:
delete from myTable where createdOn < CurDate() - 5
DELETE FROM table_name WHERE time
<(NOW () – INTERVAL 5 DAYS)