Ich verwende PHP/MySQL und gehe davon aus, dass eine Abfrage ausgeführt werden kann und wenn es passende Ergebnisse gibt, fehlschlagen, wenn es keine passenden Ergebnisse gibt, dann einfügen.
Probieren Sie es aus. Hier :date:
ist das Datum des Eintrags, den Sie hinzufügen werden, und :start-time:
und :finish-time:
sind die Start- und Endzeiten.
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`