У меня есть следующие данные;
ID startDate endDate
-----------------------------------------------
1 2010-03-01 10:00:00 2010-03-01 12:00:00
2 2010-03-01 12:30:00 2010-03-01 15:30:00
3 2010-03-01 15:30:00 2010-03-01 18:30:00
Что я хочу сделать, это убедиться, что даты начала и окончания не попадают в диапазоны startDate и endDate в моих данных.
Так, например, следующее будет в порядке;
startDate endDate
-----------------------------------------------
2010-03-01 12:00:00 2010-03-01 12:30:00
2010-03-01 18:30:00 2010-03-01 21:00:00
но следующие даты потерпят неудачу, поскольку они будут перекрываться;
startDate endDate
-----------------------------------------------
2010-03-01 09:00:00 2010-03-01 13:00:00 (overlaps ID 1)
2010-03-01 10:30:00 2010-03-01 11:00:00 (overlaps ID 1)
2010-03-01 18:00:00 2010-03-01 19:00:00 (overlaps ID 3)
Я дергаю себя за волосы, потому что могу получить один или два из трех вышеуказанных диапазонов дат, но не все.
Я использую MySQL.