Datumbereiche abgleichen (MySQL)
Dieter
- datenbank
Hallo,
ich möchte einen Datumsbereich (Start und Ende je Timestamp) innerhalb einer MySQL-Abfrage abgleichen, d.h. ob sich der Bereich
mit einem bereits gespeichertem Bereich deckt bzw. überschneidet.
Hierzu müsste ich also innerhalb der Query feststellen ob
Datumbereich A (von - bis) mit bereits in der DB vorhandenen Bereichen (von - bis) überschneiden würde.
Leider waren meine bisherigen (Anfänger-)Versuche mit OR-Vergleichen nutzlos...
Daher die anfrage an euch: Wie geht das innerhalb einer (!) Abfrage ?
Viele Grüße
Dieter
hi,
ich möchte einen Datumsbereich (Start und Ende je Timestamp)
Spaltentyp TIMESTAMP von MySQL hoffentlich?
innerhalb einer MySQL-Abfrage abgleichen, d.h. ob sich der Bereich
mit einem bereits gespeichertem Bereich deckt bzw. überschneidet.
Hierzu müsste ich also innerhalb der Query feststellen ob
Datumbereich A (von - bis) mit bereits in der DB vorhandenen Bereichen (von - bis) überschneiden würde.
Sowas wie
WHERE (spalte_von BETWEEN gesucht_von AND gesucht_bis) OR (spalte_bis BETWEEN gesucht_von AND gesucht_bis)
?
gruß,
wahsaga
Hallo wahsaga !
JAAA, Danke !! BETWEEN - das ist das was ich gesucht hatte, nur leider habe ich es in meinem vorliegenden Dokus nicht gefunden.
Eine Frage habe ich aber noch:
Wiso ist es eigentlich wichtig, den Timestamp in der MySQL auch
als Timestamp zu typerisieren ?
Gruss
Dieter
hi,
Wiso ist es eigentlich wichtig, den Timestamp in der MySQL auch
als Timestamp zu typerisieren ?
Weil man dann auch vernünftig mit den Datums- und Zeitfunktionen von MySQL darauf operieren kann.
gruß,
wahsaga
echo $begrüßung;
Wiso ist es eigentlich wichtig, den Timestamp in der MySQL auch als Timestamp zu typerisieren ?
Was wahsaga vermutlich meint, ist nicht nur der MySQL-Feld-Typ TIMESTAMP, sondern generell einen der Date and Time Types zu verwenden, anstatt beispielsweise ein Integer-Feld mit einem Unix-Timestamp zu bestücken. Der TIMESTAMP hat (außer dem geringeren Wertebereich gegenüber DATETIME) einen eingebauten Zauber. Wenn man den nicht benötigt, sollte man einen der anderen Typen verwenden.
echo "$verabschiedung $name";