MYSQL только получать записи, которые не старше X дней - PullRequest
0 голосов
/ 11 октября 2018

Я хочу получить записи MySQL, которые не старше 3 дней.Мой запрос MYSQL такой:

SELECT * 
FROM posts 
ORDER BY id DESC AND DATEDIFF(creation_date, ADDDATE(CURRENT_DATE, -3))

Я не получаю результатов при его выполнении.creation_date - это столбец SQL с типом date.

Даты хранятся в таком формате 2018-12-06 для 6 декабря 2018

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Не проверено, но вам нужно что-то вроде этого,

SELECT * FROM posts WHERE creation_date >= (DATE(NOW()) - INTERVAL 3 DAY) ORDER BY id DESC

Для mysql синтаксис и функция даты

0 голосов
/ 11 октября 2018

вы ошиблись, чтобы поставить ваше условие, попробуйте как ниже, оно будет работать

 SELECT * FROM posts 
 where date(creation_date) >=DATE_ADD(CURDATE(), INTERVAL -3 DAY)
 and date(creation_date) <=curdate()
 ORDER BY id DESC

Здесь я использовал DATE_ADD функцию, чтобы вернуться на 3 дня

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...