Ответ Лами хорош, но вы можете немного его оптимизировать.
SELECT * FROM tbl WHERE
existing_start BETWEEN $newSTart AND $newEnd OR
$newStart BETWEEN existing_start AND existing_end
Это поймает все четыре сценария, где диапазоны перекрываются и исключают два, где они этого не делают.