Sortieren nach eigenem Datum
Martin T.
- php
Hallo Experten,
ich hab eine wahrscheinlich simple Frage, aber irgendwie ne kleine Blockade, ich hoffe ihr könnt mir helfen...
In meiner Datenbank wird (bedingt durch ein bestimmtes Formular), das Datum erfasst in 3 Zahlen (Zahl 1 = Tag, Zahl 2 = Monat, Zahl 3 = Jahr). Diese 3 Zahlen werden in 3 verschiedene Felder der Tabelle geschrieben.
Nun möchte ich bei der Ausgabe aber natürlich auch die Option anbieten, per Datums zu sortieren. Hat jemand eine Idee, wie ich das am geschicktesten machen könnte?
Grüße
Martin
Hallo,
das es in 3 verschiedenen feldern gehalten wird ist schlecht...
kannst du nicht die einzelnes strings der 3 eingabefelder des vorangehenden forms zusammenpacken und in ein datumsfeld der db schreiben? dann wäre das sortieren mit einer sql-abfrage sehr einfach...
Odium
Hallo,
Hallo,
das es in 3 verschiedenen feldern gehalten wird ist schlecht...
Warum?
kannst du nicht die einzelnes strings der 3 eingabefelder des vorangehenden forms zusammenpacken und in ein datumsfeld der db schreiben? dann wäre das sortieren mit einer sql-abfrage sehr einfach...
SELECT Name, Jahr, Monat, Tag FROM Tabelle1 ORDER BY Jahr, Monat, Tag;
ergibt die "normale" Reihenfolge (der Älteste zuerst).
SELECT Name, Jahr, Monat, Tag FROM Tabelle1 ORDER BY Monat, Tag;
ergibt die "Geburtstagslistenreihenfolge". Da ist es nämlich egal, in welchem Jahr man geboren ist. Und:
SELECT Name, DateSerial([Jahr],[Monat],[Tag]) AS Datum FROM Tabelle1 ORDER BY DateSerial([Jahr],[Monat],[Tag]);
ergibt ein neues Feld mit dem Datum.
Gruß
Axel
Das wars!
super, vielen Dank!!!!
grüße
Martin
Holla
In meiner Datenbank wird (bedingt durch ein bestimmtes Formular), das Datum erfasst in 3 Zahlen (Zahl 1 = Tag, Zahl 2 = Monat, Zahl 3 = Jahr). Diese 3 Zahlen werden in 3 verschiedene Felder der Tabelle geschrieben.
SELECT ... , mktime (0,0,0, Zahl 2
,Zahl 1
,Zahl 3
) AS Datum FROM ... WHERE ... ORDER BY Datum
Für neueste zuerst DESC hintendran.
Reihenfolge mktime(,,,MONAT,TAG,JAHR) !