Lo único que necesitas es saber si la hora de inicio de la nueva está entremedio de alguna de las que ya están o si la hora de fin de la nueva lo está.
Eso te dará la respuesta.
Algo así te devolvería 1 si hay algún cruzamiento entre el valor de
horainicial u
horafinal, contra alguno de los horarios que figuren en la tabla. Si devuelve cero, no se cruza con ninguna.