|
|
|
|
|
для: birdok
(10.11.2007 в 22:25)
| | вторая формулировка этой же задачи
есть table:
__________________________________________________
|the_date |repeatOnMonday |repeatOnTuesday |...
----------------------------------------------------------------------
|2007-10-26 10:00:00 |Yes |No |...
|2007-11-01 11:00:00 |Yes |Yes|...
|2007-11-10 10:00:00 |No |No |...
....
есть запрос :
SELECT * FROM the_table WHERE the_date > '2007-11-10 00:00:00' AND the_date< '2007-12-10 00:00:00';
Запрос нужно расширить так чтобы он возвратил записи из диапазона the_date > '2007-11-10 00:00:00' AND the_date< '2007-12-10 00:00:00' и сюда чтобы попали записи, которые может и не входят в этот диапазон, но они повторяются по каких то днях недели (например, по понедельникам - тоесть всегда они должны попадать в список результатов если диапазон фильтра > 7 дней, причем если диапазон фильтра захватывает диапазон в 1 месяц то данное событие должно попасть в результаты поиска как минимум 4 раза )
А так как результат будет сортироваться по дате, желательно чтобы дата повторяющегося по каких то дням недели, события изменялась до даты в текущем диапазоне фильтра. (Пример: для фильтра длинной в 1 месяц [c 1го сентября 2007г по 1 октября 2007г ] сюда должно попасть событие которое добавили датой не входящей в этот диапазон но событие повторяется по понедельникам в 10 часов утра. Как результат мы должны получить события 3, 10, 17, 24 сентября и 1 Октября 2007г в нашем диапазоне результатов запроса.) | |
|
|
|
|
|
|
| есть table:
__________________________________________________
|the_date |repeatOnMonday |repeatOnTuesday |...
----------------------------------------------------------------------
|2007-10-26 10:00:00 |Yes |No |...
|2007-11-01 11:00:00 |Yes |Yes|...
|2007-11-10 10:00:00 |No |No |...
....
есть запрос :
SELECT * FROM the_table WHERE the_date > '2007-11-10 00:00:00' AND the_date
< '2007-12-10 00:00:00';
Помогите его усовершенствовать и отфильтровать данные из таблицы по диапазону даты, + туда должны попасть записи кот. повторяются по каким то дням недели (пн., вт. ....) не зависимо, попадает это событие в диапазон или нет. Исключение составляет ситуация когда диапазон времени < 1 недели,
например 2 дня the_date > '2007-11-10 00:00:00' AND the_date < '2007-11-11 23:59:59'
Суббота и Воскресенье, в результат должны попасть записи повторяющиеся в эти
дни недели, но при этом `the_date` должно отображаться с поправкой к
текущему диапазону фильтра (время сохраняется, меняется - день месяц год) | |
|
|
|
|