Měl jsem takový dotaz s kalendářovou aplikací, kterou jsem kdysi psal. Myslím, že jsem použil něco takového:
... WHERE new_start < existing_end
AND new_end > existing_start;
AKTUALIZACE To by rozhodně mělo fungovat ((ns, ne, es, ee) =(new_start, new_end,existující_start,existující_konec)):
- ns - ne - es - ee:nepřekrývá se a neodpovídá (protože ne
- ns - es - ne - ee:překrývání a shody
- es - ns - ee - ne:překrývání a shody
- es - ee - ns - ne:nepřekrývá se a neodpovídá (protože ns> ee)
- es - ns - ne - ee:překrývání a shody
- ns - es - ee - ne:překrývání a shody
Zde je housle