Datums-Funktion im SQL-Statement
Patrick
- datenbank
0 Suat Özgür0 Klaus Mock
Hallo Leute,
ich habe derzeit ein kleines Problem, dass ich einfach etwas eleganter lösen will:
Ist-Zustand:
Derzeit frage ich ein Datum aus der DB ab, mit WHERE werden die Ausnahmen bestimmt. Mit LIMIT 5 werden nur die ersten fünf Datensätze auf die die WHERE-Bedingung zutrifft angezeigt.
Danach vergleiche ich den UNIX_TIMESTAMP aus der DB mit dem aktuellen Datum, wenn dieses kleiner ist, dann soll der Datensatz angezeigt werden.
Der Vergleich läuft nach dem SQL-Statement, das hat zur Folge, dass möglicherweise weniger als die zuvor eingestellten fünf Datensätze angezeigt werden, falls dass Datum des timestamps grösser als das aktuelle Datum ist.
Kann ich diesen Vergleich bereits in die WHERE-Bedingung einbauen, damit die Anzahl der angezeigten Datensätze immer bei fünf bleibt? Und wenn ja wie, denn das folgende hat nicht geklappt:
$timestamp2=time();
....SELECT UNIX_TIMESTAMP(datum) as date.... WHERE date<=$timestamp2...;
Danke für Eure Hilfe...
Gruss
Patrick
$timestamp2=time();
....SELECT UNIX_TIMESTAMP(datum) as date.... WHERE date<=$timestamp2...;
schon mit anführungsstrichen versucht?
... date <='$timestamp2' ...
Hallo,
Kann ich diesen Vergleich bereits in die WHERE-Bedingung einbauen, damit die Anzahl der angezeigten Datensätze immer bei fünf bleibt?
Ja, sicherlich.
Und wenn ja wie, denn das folgende hat nicht geklappt:
Oft genügt ein Blick in die Produkt-Dokumentation, um solche Fragen zu beantworten:
http://www.mysql.com/doc/D/a/Date_and_time_functions.html
(Gleich das erste Beispiel beschäftigt sich, wenn auch nicht in der einfachen Form, wie es hier gefordert ist, mit dem Problem Datumsvergleich und aktuelle Uhrzeit.)
Grüße
Klaus