Probleme mit Sortieren und Datum

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Probleme mit Sortieren und Datum

    Hallo!

    ich habe Probleme beim Sortieren von Datensätzen; Ich habe 2 Felder (Date+Text) und will nach dem Datum sortieren lassen.
    Meine Abfrage sieht so aus:
    $abfrage = "SELECT datum,text FROM termine ORDER BY datum,text DESC"

    Ich kann jedoch nicht festlogen, ob ab- oder aufsteigend (DESC / ASC). Die Ausgabe beginnt immer bei einem vergangenen Datum (z.B. 2002-01.12) und endet zb. bei 2002-05-16). Das brauche ich aber genau umgekehrt!


    Zweites Problem. (Hier bestimmt schon zig mal aufgetaucht)
    Das SQL Datumsformat (YYYY-MM-DD) in eine etwas gebräuchlichere Schreibweise (DD.MM.YYYY) ändern.
    Ich habe dazu folgendes versucht:

    $abfrage = "SELECT DATE_FORMAT(datum, '%d.%m.%Y') AS datum,text FROM termine ORDER BY datum,text DESC";

    Dabei wird das Datum so wie ich es will angezeigt, jedoch werden die Datensätze dann nicht mehr nach dem Datum sortiert!

    Bin über jeden Tip dankbar!

    Viele Grüße
    Achim

  • #2
    Für beide Probleme, die ja eigentlich nur eines sind:

    ORDER BY datum DESC,text DESC

    CAT Music Files

    Kommentar


    • #3
      Hi Sky,

      dein Vorschlag brachte leider nicht den gewünschten Erfolg;

      das Datum wird zwar im gewünschten Format (DD.MM.YYYY) ausgegeben, aber das Sortieren klappt nicht richtig. Es scheint so, als ob nur die Tage (DD) sortiert werden. Monat und Jahr (MM.YYYY) bleiben dabei unberücksichtigt.

      Das Ergebnis sieht in etwa so aus:

      01.03.2002 Testeintrag
      01.05.2002 Testeintrag
      08.03.2002 Testeintrag
      17.02.2002 Testeintrag

      Kommentar


      • #4
        $abfrage = "SELECT DATE_FORMAT(datum, '%d.%m.%Y') AS anzeigedatum,text FROM termine ORDER BY datum,text DESC";


        Kommentar


        • #5
          Hi hand,

          das Ändernd er Variable brachte den Erfolg! Besten Dank

          Kannst du mir auch noch verraten wie ich das ganze umgekehrt mache kann, sprich Datum im Fomrat DD.MM.YYYY einlesen und in die DB im Format YYYY-MM-DD schreiben?

          Gruß
          Achim

          Kommentar


          • #6
            Wenn Dein Datum das Format DD.MM.YYYY hast und Du das in das Format YYYY-MM-DD umwandeln willst, kannst Du beispielsweise explode() verwenden und das Datum dann über das Ergebnis-Array zusammenbauen.

            Kommentar

            Lädt...
            X