mysql In Range Abfrage

Tago

Mitglied
Hallo zusammen.

Ich habe ein Problem mit einer Mysql-Abfrage.
Es gibt eine Datenbank in der Kalendertermine gespeichert sind.
vonDatum (Datum als timestamp)
bisDatum (Datum als timestamp)

Für einzelne Tage möchte ich jetzt die entsprechenden Eintrage haben.
dafür nehme ich 2 timestamps - startTag und endTag.

als sql dann etwas so
Code:
 ... WHERE vonDatum BETWEEN startTag AND endTag OR bisDatum BETWEEN startTag AND endTag

d.h ja wenn vonDatum oder bisDatum in der Spanne vom startTag bis endTag liegen, dann wird ein Eintrag gefunden.

Was ist jetzt allerdings, wenn (Uhrzeit spielt jetzt keine Rolle):
vonDatum = 20.10.07
bisDatum = 24.10.07
- also der Termin ist über mehrere Tage und ich suche im 22.10.07.

quasi müsste jetzt nach ranges gesucht werden. Wie
Range(vonDatum - bisDatum) schneidet die Range(startTag - endTag)

Gibt es eine Möglichkeit so etwas in mysql anzufragen?

Danke für eure Hilfe!
 
Selbst drauf gekommen, ein wenig schlaf hilft machmal schon:

Code:
.. WHERE 

(vonDatum BETWEEN startTag AND endTag OR bisDatum BETWEEN startTag AND endTag)

OR

(vonDatum < startTag AND bisDatum > endTag)
 
Zurück