Nach Datum sortieren

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

  • Nach Datum sortieren

    Ich möchte meine Tabelle nach Datum absteigend sortieren. Ich habe in der DB das Datumsfeld als Type VARCHAR, da sortiert er das nicht richtig. Als DATE bekomme ich ein komisches Format, welches ich nicht will. Ich möchte das Format: 01.07.02.

    Was muss ich dazu machen?

    Gruß
    Frank

  • #2
    ein paar infos wären noch interessant...

    was fürn datumsformat hast du in der tabelle ??

    lies mal den thread hier, der hilft bestimmt weiter!
    http://www.php-resource.de/forum/sho...?threadid=8125

    gruss

    Kommentar


    • #3
      im Moment hab ich das wieder auf VARCHAR. Nur dann sortiert er das dann nur nach den Tagen. Ich würd das gerne als Date machen, gerne auch im Format 12.Juni.2002. Wie gehe ich das dann mit der Sortierung an?

      Gruß
      Frank

      Kommentar


      • #4
        entweder speicherst du das datum als timestamp ab, oder als englisches format, deinen Wunsch kann die Datenbank direkt nicht erfüllen, mußt du halt bei der ausgabe umformatieren, wie du es haben möchtest!!

        gruss

        Kommentar


        • #5
          du solltest das Format TIMESTAMP benutzten!
          Varchar ist dafür ungeeignet, da du bei jedem Zugriff auf die Tabelle bestimmt berechnungen durchführen musst!

          php-Entwicklung | ebiz-consult.de
          PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
          die PHP Marktplatz-Software | ebiz-trader.de

          Kommentar


          • #6
            ok, das hab ich jetzt gemacht.
            Da kommt jetzt also ein $date mit 130702 in der Ausgabe. Wie formatiert man denn sowas um?

            Gruß
            Frank

            Kommentar


            • #7
              Hmmnnn ... ich würde ja den Datentype DATE oder DATETIME verwenden ... aber formatieren geht mit DATE_FORMAT()
              carpe noctem

              [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
              [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

              Kommentar


              • #8
                also ich hab da doch nochmal ne Frage:

                Wie leg ich das denn fest?

                so klappt das nicht!
                select DATE_FORMAT($date, %d.%b.%Y);

                Ich will das Format "12.October.2002"

                Gruß
                Frank

                Kommentar


                • #9
                  SELECT DATE_FORMAT(Datumsfeld, '%d.%M.%Y') AS Datumsfeld
                  FROM tabelle
                  carpe noctem

                  [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                  [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                  Kommentar


                  • #10
                    ich hab da ein Problem...ich weiss gar nicht wohin damit. Hab jetzt einiges probiert, das geht aber noch nicht.

                    Hier der Code:

                    // Verbindung aufbauen, auswählen einer Datenbank
                    $link = mysql_connect("localhost", "root", "2001bcn")
                    or die("Keine Verbindung möglich!");
                    mysql_select_db("aktuell")
                    or die("Auswahl der Datenbank fehlgeschlagen");


                    $orderby = Request("orderby",$argc,$argv,$HTTP_GET_VARS);
                    if ($orderby!="date" && $orderby!="event")
                    $orderby = "date";


                    // ausführen einer SQL Anfrage
                    $query = "SELECT id, date, event FROM termine order by date desc";

                    SELECT DATE_FORMAT(date, '%d.%M.%Y') AS date FROM termine;


                    $result = mysql_query($query)
                    or die("Anfrage fehlgeschlagen");




                    // Ausgabe der Ergebnisse in HTML
                    ...

                    Kommentar


                    • #11
                      PHP-Code:
                      // ausführen einer SQL Anfrage 
                      $query "SELECT id, DATE_FORMAT(`date`, '%d.%M.%Y') AS datum, event FROM termine order by date desc"

                      $result mysql_query($query
                      or die(
                      mysql_error()); 
                      Allerdings mußt Du ein Feld namens date in Backticks angeben.
                      carpe noctem

                      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                      Kommentar


                      • #12
                        Das klappt, nur hat das Datum ein falsches Format. In der DB hab ich im Moment für das feld 'date' TIMESTAMP genommen. Ist das nicht so geeignet?
                        also aus 130702 wir jetzt: 02.July.2013

                        Was meinst Du mit 'Backticks'??

                        Gruß
                        Frank

                        Kommentar


                        • #13
                          Deshalb verwende ich ja auch immer DATE oder DATETIME ...

                          Backticks: `
                          carpe noctem

                          [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                          [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                          Kommentar


                          • #14
                            leider zeigt der immer noch ein falsches Format, wie oben!

                            Hast Du noch eine Idee?

                            Gruß
                            Frank

                            Kommentar

                            Lädt...
                            X