Я хочу получить записи, которые существуют между заданным временем начала и временем окончания, время начала и время окончания будут предоставлены пользователем, я использую для этого следующий запрос:
$this->db->where('TIME(start) BETWEEN "' . date('H:i:s', strtotime($start_time)) . '" and "' . date('H:i:s', strtotime($end_time)) . '"');
$this->db->where('TIME(end) BETWEEN "' . date('H:i:s', strtotime($start_time)) . '" and "' . date('H:i:s', strtotime($end_time)) . '"');
$results = $this->db->get('class')->result();
столбец времени начала и окончания - это поле даты и времени:
например. в базе данных время начала: 2020-06-08 06:15:00 время окончания: 2020-06-08 09: 15: 00