Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: MySQL - выборка повторений по дням недели
 
 автор: 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';
Помогите его усовершенствовать и отфильтровать данные из таблицы по диапазону даты, + туда должны попасть записи кот. повторяются по каким то дням недели (пн., вт. ....) не зависимо, попадает это событие в диапазон или нет. Исключение составляет ситуация когда диапазон времени < 1 недели,
например 2 дня the_date > '2007-11-10 00:00:00' AND the_date < '2007-11-11 23:59:59'
Суббота и Воскресенье, в результат должны попасть записи повторяющиеся в эти
дни недели, но при этом `the_date` должно отображаться с поправкой к
текущему диапазону фильтра (время сохраняется, меняется - день месяц год)

   
 
 автор: birdok   (10.11.2007 в 23:50)   письмо автору
 
   для: 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г в нашем диапазоне результатов запроса.)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования