Я разрабатываю календарное приложение, которое повторяется Нет, Ежедневно, Еженедельно, Ежемесячно и Ежегодно. Одно из моих требований - «Никакие два события не должны перекрываться» Имя таблицы, в которой я храню данные
События
поля
dtstart - Время начала события
dtend - Время окончания события
Рассмотрим следующие два случая,
Событие1 15 августа 15:00 - 16:00 Recurrence-None
Event2 15 августа 14:00 PM - 17-00 PM Recurrence-None
В приведенном выше случае следующий запрос SQL работает как charm
String sqlQuery = "SELECT * ОТ События, ГДЕ dtstart И dtend МЕЖДУ% d И% d ";
sqlQuery = String.format (sqlQuery, dtstart, dtend);
Теперь рассмотрим случай два.
Event1 15 августа 15:00 - 16:00 Повторение- Ежедневно до 20 августа
Event2 18 августа 14:00 - 17:00 Повторение - нет
В случае сбоя двух моих sqlQuery, поскольку он проверяет время начала и окончания события для одной и той же даты (18 августа). В моем случае в моем запросе должно быть указано конфликтующее время на 15 августа.
Пожалуйста, помогите мне с запросом SQL, чтобы проверялись даже повторяющиеся события.
В таблице событий я храню время начала, время окончания, дата последнего событие и тип события.
Схема базы данных выглядит следующим образом
Имя таблицы: События
Заголовок | dtstart | dtend | Тип повторения | последнее вхождение