[PHP5] Ordnen nach verschiedenen Prioritäten

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

  • [PHP5] Ordnen nach verschiedenen Prioritäten

    Hallo zusammen.

    Ich komme gleich zum Punkt. Was ich habe ist eine Datenbank mit Datumeinträgen. Das Datum bei jedem eintrag ist so formatiert, dass es im 1.11.1111 Format ausgegeben wird.

    Ich würde es ja gerne im 01.01.1111 Format ausgeben aber dazu fehlt mir bis jetzt noch die Kenntniss.

    Nun aber zu meiner Hauptfrage.
    ich möchte gerne das die Einträge (daten) nach ihren Daten geordnet werden. Sprich der 2. Januar soll erst nach dem 1. Februar angezeigt werden usw.

    Bis jetzt habe ich nur die folgende Version hinbekommen, die mir das Benötigte nicht wirklich wiedergibt.

    PHP-Code:
    $select mysql_query("SELECT * FROM items ORDER BY date_day, date_month, date_day DESC LIMIT $start$limit_entry"); 
    Vielen dank für eure Hilfe !

  • #2
    also zum datum formatieren nimmst du DATE_FORMAT ( paramerter googlen)

    und zum sortieren ORDER BY datumsspalte

    aber was hat deine frage bei php zu suche? das ist alles reines sql-problem!!

    Kommentar


    • #3
      Das ich ORDER BY nehmen muss ist mir klar. Allerdings ordnet er dann ja nur nach einer Variable, ich will doch aber, dass es nach mehreren Variblen geordnet wird, die verschiedene Prioritäten haben.

      Sprich...
      Jahr hat die höchste, Tag die niedrigste Priorität. Ich dachte mir, dass das nicht geht in MYSQL, deswegen suche ich gerade nach einer PHP Lösung.

      Kommentar


      • #4
        von welchem typ ist die datum spalte bei dir?
        Sprich der 2. Januar soll erst nach dem 1. Februar angezeigt werden usw.
        Jahr hat die höchste, Tag die niedrigste Priorität.
        was denn nun?

        Kommentar


        • #5
          klar geht das..
          du fragtd die jahre ab und dann die monate und dann die jahre und dann order by jahr, monat, tag

          ungefähr so (nicht 100% richtig da ich nix zum testeh habe)

          select month(datum) as monat, year(datum) as jahr, day(datum) as tag
          from....
          order by jahr, monat, tag

          Kommentar


          • #6
            Original geschrieben von penizillin
            von welchem typ ist die datum spalte bei dir? was denn nun?
            Die Spalte ist vom typ VARCHAR.

            Ich versuche grade die order by jahr, monat, tag methode, doch irgendwie scheint das noch nicht 100 % zu funktionieren....

            Kommentar


            • #7
              Varchar ist auch Unsinn. Nimm Date, und schon kannst du nach Date sortieren.
              ich glaube

              Kommentar


              • #8
                das ist selbstverständlich falsch. schlag mal im manual nach, welche typen es noch gibt. du brauchst datetime oder date.

                Kommentar


                • #9
                  hey, wunderbar jetzt hat es funktioniert. Ich musste nur ein wenig an dem ORDER BY rumspielen und das datum mit 0en Formatieren !

                  Vielen dank !

                  Kommentar


                  • #10
                    Sorry, durch Internet Probleme doppelpost !

                    Kommentar


                    • #11
                      ähm - wenn du nun wie empfohlen eine Date-Spalte draus gemacht hast, dann musst du gar nichts formatieren, denn Datum ist Datum.

                      (Es sei denn natürlich, du meinst, dass du nun beim Auslesen die Funktion DATE_FORMAT anwendest...)
                      ich glaube

                      Kommentar


                      • #12
                        Datentypen: http://dev.mysql.com/doc/refman/5.0/en/data-types.html

                        im deinem Fall also: http://dev.mysql.com/doc/refman/5.0/en/datetime.html

                        Kommentar

                        Lädt...
                        X