Ich hatte eine solche Abfrage mit einer Kalenderanwendung, die ich einmal geschrieben habe. Ich glaube, ich habe so etwas verwendet:
... WHERE new_start < existing_end
AND new_end > existing_start;
AKTUALISIEREN Das sollte auf jeden Fall funktionieren ((ns, ne, es, ee) =(neuer_start, neues_ende, bestehender_start, bestehender_ende)):
- ns - ne - es - ee:überschneidet sich nicht und stimmt nicht überein (weil ne
- ns - es - ne - ee:Überschneidungen und Übereinstimmungen
- es - ns - ee - ne:Überschneidungen und Übereinstimmungen
- es - ee - ns - ne:überschneidet sich nicht und stimmt nicht überein (weil ns> ee)
- es - ns - ne - ee:Überschneidungen und Übereinstimmungen
- ns - es - ee - ne:Überschneidungen und Übereinstimmungen
Hier ist eine Geige