Я видел много тем о диапазонах дат в MySQL, но я все еще не могу найти ответ на то, что я ищу, поэтому любая помощь будет принята с благодарностью.
У меня есть таблица MySQL с 3 столбцами, дата - время начала - время окончания. Дата является полем типа «дата» MySQL, а время начала и окончания являются полями типа «время».
Скажем, например, у меня есть запись в базе данных следующим образом, давайте назовем эту сессию 1;
date = 2011-06-30, startTime = 09:00:00, finishTime = 11:00:00
Если я приду, чтобы добавить еще один сеанс, мне нужно убедиться, что он не конфликтует с существующим сеансом. Таким образом, следующее не удастся, потому что оно попадает между временем начала и окончания сеанса 1.
date = 2011-06-30, startTime = 10:00:00, finishTime = 12:00:00
Таким образом, запись может быть вставлена только «ПОСЛЕ» или «ДО» существующей сессии.
Я использую PHP/MySQL и исхожу из того, что запрос может быть запущен, и если есть совпадающие результаты, то произойдет сбой, если нет совпадающих результатов, затем вставьте.
Заранее спасибо.
09:00 - 11:00, а новый —11:00 - 13:00. Столкновение или нет? - person ypercubeᵀᴹ   schedule 29.06.2011BETWEENне будут работать, так как они приведут к столкновению. - person ypercubeᵀᴹ   schedule 01.07.2011