La consulta implementada quedó como sigue:
Código SQL
[-]SELECT
horario_detalle.id_horariodet,
horario_detalle.posIniGrid,
horario_detalle.posFinGrid
FROM
horario_detalle
INNER JOIN curso ON horario_detalle.idcurso_fk = curso.id_curso
WHERE
horario_detalle.idsemestre_fk = :IDSemestre AND
horario_detalle.idcurr_fk = :IDCurr AND
horario_detalle.idfacultad_fk = :IDFacultad AND
horario_detalle.iddptoacad_fk = :IDDpto AND
horario_detalle.iddia = :IDDia AND
((:PosIni <= horario_detalle.posIniGrid AND :PosFin >= horario_detalle.posFinGrid)
OR
(:PosIni >= horario_detalle.posIniGrid AND :PosFin <= horario_detalle.posFinGrid)
OR
(:PosIni <= horario_detalle.posFinGrid AND :PosFin >= horario_detalle.posFinGrid)
OR
(:PosIni <= horario_detalle.posIniGrid AND :PosFin >= horario_detalle.posFinGrid)) AND
curso.ciclo = :Ciclo
Solo una observacion final: Si Existe un horario de hora=0 (7:00am) a hora=2 (9:00am) y quiero asignar un horario nuevo de 9:00am a 11:00am no me permite.
Un abrazo