Ankündigung

Einklappen
Keine Ankündigung bisher.

Datum sortiert ausgeben

Einklappen

Neue Werbung 2019

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

  • Datum sortiert ausgeben

    Hallo zusammen,
    ich bin jetzt schon eine ganze Weile damit beschäftigt diverse Seiten durchzulesen um eine Lösung zu finden, finde aber leider nicht den richtigen Weg.

    Ich habe eine Datenbank, in der alle Spiele unserer Jugendabteilung mit allen notwendigen Daten stehen.Bislang konnte ich alle Abfragen so gestalten wie ich sie gebraucht habe aber jetzt bin ich an meine Grenzen gestoßen.

    Die neue Abfrage soll alle Heimspiele in einem vordefinierten Zeitraum nach Mannschaft und Datum sortiert wiedergeben.

    So funktioniert es!
    PHP-Code:
    "SELECT  zeit,team,anstoss,heim,gast,spielort,umkleide FROM  `spielplan` WHERE zeit BETWEEN '$num' AND '$num1' AND heim LIKE '***' Order by zeit  , team  ASC " 
    So leider nicht!
    PHP-Code:
    "SELECT DATE_FORMAT(zeit, '%d.%m.%Y')as zeit,team,anstoss,heim,gast,spielort,umkleide FROM  `spielplan` WHERE zeit BETWEEN '$num' AND '$num1' AND heim LIKE '***' Order by zeit  , team  ASC " 
    Kann mir da bitte jemand weiterhelfen?
    Ich gehe zwar davon aus, dass ich das Format an einer anderen Stelle ändern muss aber ich möchte vorher eine andere Meinung einholen.

    Mit bestem Dank im voraus ARREIS


  • #2
    "Funktioniert nicht" ist keine sinnvolle Problembeschreibung.
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Stimmt!
      Es ist so, dass in dieser Version
      PHP-Code:
      "SELECT DATE_FORMAT(zeit, '%d.%m.%Y')as zeit,team,anstoss,heim,gast,spielort,umkleide FROM  `spielplan` WHERE zeit BETWEEN '$num' AND '$num1' AND heim LIKE '***' Order by zeit  , team  ASC " 
      nur nach Tageswerten sortiert wird, d.h. von 01. - 31. die Monate werden dabei außer Acht gelassen.

      Bei dieser Version
      PHP-Code:
      "SELECT zeit,team,anstoss,heim,gast,spielort,umkleide FROM  `spielplan` WHERE zeit BETWEEN '$num' AND '$num1' AND heim LIKE '***' Order by zeit  , team  ASC " 
      wird richtig sortiert, nur ist in dem Fall das Format nicht so wie ich es brauche.

      Kommentar


      • #4
        Abfragen kannst du ein bisschen einrücken, dann lassen sie sich besser lesen. http://www.freeformatter.com/sql-for...html#ad-output
        Code:
        SELECT
           DATE_FORMAT(zeit,
           '%d.%m.%Y')as zeit,
           team,
           anstoss,
           heim,
           gast,
           spielort,
           umkleide 
        FROM
           `spielplan` 
        WHERE
           zeit BETWEEN '$num' AND '$num1' 
           AND heim LIKE '***' 
        Order by
           zeit  ,
           team  ASC
        Dann wären noch Beispieldaten inkl. erwartetem Ergebnis hilfreich.


        wird richtig sortiert, nur ist in dem Fall das Format nicht so wie ich es brauche.
        Mit dieser Aussage können wir immer noch nichts anfangen. Könnten raten wie das Format denn sein soll, oder du sagst es einfach gleich...
        Relax, you're doing fine.
        RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

        Kommentar


        • #5
          nur nach Tageswerten sortiert wird, d.h. von 01. - 31. die Monate werden dabei außer Acht gelassen.
          Sorry, aber wenn Du dmY sortierst, dann kommt halt auch dmY raus, nicht Ymd. Und dann ist der 1.8.2014 halt vor dem 2.5.1999.

          01082014
          02051999
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            Code:
            SELECT DATE_FORMAT(zeit, '%d.%m.%Y')as zeit ... Order by zeit
            Fällt dir was auf? Die Grube gräbst du dir ja selbst. Und SQL-Keywords wegen Lesbarkeit besser immer groß schreiben.

            nur ist in dem Fall das Format nicht so wie ich es brauche.
            a) Dann nimm die Variante wo es korrekt sortiert wird und formatiere es mit PHP in der Ausgabe noch korrekt, PHP kann das ganz gut

            oder

            b) Lass es MySQL machen:
            Code:
            SELECT DATE_FORMAT(zeit, '%d.%m.%Y') AS zeit_ausgabe ... ORDER BY zeit
            - dann wird richtig nach zeit sortiert
            - und du hast zusätzlich zeit_ausgabe im gewünschten Format zum Ausgeben in PHP zur Verfügung

            LG
            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Vielen Dank, so funktioniert es!

              Kommentar

              Lädt...
              X