MySQL совпадение времени

в БД есть таблица sessions и есть поля 'start' и 'end', и 'id' комнаты. Когда пользователь в форме указывает начало и конец сессий для определенной комнаты нужно проверить занятость этой комнаты на указанный пользователем промежуток времени(yyyy-mm-dd hh:mm:ss).(новичок)


Ответы (1 шт):

Автор решения: Barry White

Нашел решение методом проб и ошибок

$start_sql = '2019-09-23 09:00';
$end_sql = '2019-09-23 09:45';

$result = mysqli_query($connection, "SELECT * FROM `sessions` 
   WHERE (`room_id` = '1')
   AND (`start` = '$start_sql'
   OR `end` = '$end_sql' 
   OR `start` BETWEEN '$start_sql' AND '$end_sql' 
   OR `end` BETWEEN '$start_sql' AND '$end_sql'
   OR `start` < '$start_sql' AND `end` > '$end_sql')"
);

*update

(`start` >= '$start_sql' AND `start` <= '$end_sql') OR (`end` >= '$start_sql' AND `end` <= '$end_sql') OR (`start` < '$start_sql' AND `end` > '$end_sql')
→ Ссылка