Дополнительные результаты с интервалом MySQL

#mysql

#mysql

Вопрос:

Я попытался собрать свой запрос вместе, чтобы выбрать последние 7 дней, и я изменил его так, чтобы он должен был выбирать последние 7 дней с даты, которую я ввожу, вместо NOW() , однако, когда я делаю это, он выдает результаты за 7 дней до даты, а затем каждую запись ПОСЛЕ даты:

 date Ascending
2016-10-02
2016-10-03
2016-10-05
2016-10-06
2016-10-07
2016-10-17
2016-10-18
2016-10-20
2016-10-21
2016-10-22
2016-10-23 
  

Когда следует экспортировать:

 date Ascending
2016-10-02
2016-10-03
2016-10-05
2016-10-06
2016-10-07
  

Запрос:

 SELECT DATE
FROM  `dates` 
WHERE DATE > (  '2016-10-08' - INTERVAL 1 WEEK ) 
ORDER BY  `date`
  

Я ценю вашу помощь, я просто не могу в этом разобраться.

Ответ №1:

Затем добавьте дополнительные критерии в where предложение, чтобы ограничить возвращаемые записи указанной датой:

 WHERE DATE > (  '2016-10-08' - INTERVAL 1 WEEK ) AND DATE <= '2016-10-08' 
  

Любая дата после указанной даты будет больше, чем за 1 неделю до указанной даты, поэтому вам нужен дополнительный критерий.

Комментарии:

1. Ваш волшебный и замечательный — это сработало отлично! Спасибо!

2. Хорошо написанный вопрос заслуживает ответа 🙂