Използвам PHP/MySQL и се базирам на това, че може да се изпълни заявка и ако има „съответстващи“ резултати тогава, неуспешно, ако „няма“ съвпадащи резултати, тогава вмъкнете.
Е, опитай това. Тук :date:
е датата на записа, който ще добавите, и :start-time:
и :finish-time:
са съответно началното и крайното време.
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`