Estou usando PHP/MySQL e estou indo com base em que uma consulta pode ser executada e, se houver 'resultados correspondentes, falhe, se 'não houver' resultados correspondentes, insira.
Bem, tente isso. Aqui
:date:
é a data da entrada que você vai adicionar e :start-time:
e :finish-time:
são seus horários de início e término, respectivamente. SELECT EXISTS (
SELECT
1
FROM
TableName
WHERE
`date` = :date: AND
( :start-time: BETWEEN startTime AND finishTime OR
:finish-time: BETWEEN startTime AND finishTime OR
startTime BETWEEN :start-time: AND :finish-time:
)
) AS `Clash`