mike: Datum-Sortierung

guten an alle,
ich habe ein prob.ich habe eine history tabelle mit sehr viel ausgaben.
ich möchte die datumsangaben sortiert ausgeben sprich
01.01.1995
04.02.1995
23.07.1999
25.12.1999
01.01.2000
.
.
.
.
usw
das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
01.01.1995
01.01.2000
04.02.1995
23.07.1999
.
.
.
ich möchte aber gern die jahre sortiert nah datum ansteigend.

könnte mir jemand bitte einen tipp geben!

mfg
mike

  1. Hi,

    das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
    01.01.1995
    01.01.2000
    04.02.1995
    23.07.1999

    Was tust Du dafür?
    Die Sortierung hängt von Dir ab.
    Wer sortiert PHP oder die Datenbank?
    Quellcode wäre angenehm.

    ciao
    romy

    --
    DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
    sh:( fo:| ch:? rl:( br:& va:| zu:) ss:| ls:[
    Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
    Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
    1. Hi,

      das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
      01.01.1995
      01.01.2000
      04.02.1995
      23.07.1999
      Was tust Du dafür?
      Die Sortierung hängt von Dir ab.
      Wer sortiert PHP oder die Datenbank?
      Quellcode wäre angenehm.

      ciao
      romy

      »»
      __________
      <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
      if($order=="datum" && $folge=="ASC")
      {   echo("DESC");   } else {   echo("ASC");   }

      1. Hi,

        das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
        01.01.1995
        01.01.2000
        04.02.1995
        23.07.1999
        Was tust Du dafür?
        Die Sortierung hängt von Dir ab.
        Wer sortiert PHP oder die Datenbank?
        Quellcode wäre angenehm.

        ciao
        romy
        »»
        __________
        <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
        if($order=="datum" && $folge=="ASC")
        {   echo("DESC");   } else {   echo("ASC");   }

        ----------------------------
        <th>
        <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
        if($order=="datum" && $folge=="ASC")
        {   echo("DESC");   } else {   echo("ASC");   }
        ?>&suche=<?PHP echo ($suche);?>" class="greylink">Datum</a>
        </th>

        1. Hi,
          » <th>

          <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
          if($order=="datum" && $folge=="ASC")
          {   echo("DESC");   } else {   echo("ASC");   }
          ?>&suche=<?PHP echo ($suche);?>" class="greylink">Datum</a>
          </th>

          ja und, das beantwortet nicht meine Frage.
          BTW, versuche die Sortierung von der Datenbank übernehmen zu lassen, Du sparst Dir Ärger.

          ciao
          romy

          --
          DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
          sh:( fo:| ch:? rl:( br:& va:| zu:) ss:| ls:[
          Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
          Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
          1. Hi,
            » <th>

            <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
            if($order=="datum" && $folge=="ASC")
            {   echo("DESC");   } else {   echo("ASC");   }
            ?>&suche=<?PHP echo ($suche);?>" class="greylink">Datum</a>
            </th>
            ja und, das beantwortet nicht meine Frage.
            BTW, versuche die Sortierung von der Datenbank übernehmen zu lassen, Du sparst Dir Ärger.

            ciao
            romy

            mein ziel ist es auch die Sortierung von der DB zu übernehmen,ich
            finde nur nicht den geeigneten weg.
            sie sortiert ansteigend die jahre aber
            beginnt aber das tagesdatum sprich 01.01.19995 und dann 01.01.2000
            sollte aber erst das sortierte datum von 1995 ausgeben!

            mike

            1. Hi,

              mein ziel ist es auch die Sortierung von der DB zu übernehmen,ich
              finde nur nicht den geeigneten weg.
              sie sortiert ansteigend die jahre aber
              beginnt aber das tagesdatum sprich 01.01.19995 und dann 01.01.2000
              sollte aber erst das sortierte datum von 1995 ausgeben!

              Du lässt Dir echt alles aus der Nase ziehen

              Also: normalerweise sollte die Sortierung nach Datum so funktionieren wie Du es wünschst. Das was bei Dir passeirt muss eine Ursache haben, die Du auslöst. Solange DU uns aber nicht sagst was Du machst, kann Dir keiner helfen.

              SORT BY datumsfeld ASC|DESC funktioniert wunderbar

              Fragen die Du Dir stellen solltest.
              Als was sind meine Datumsfelder(mein Datumsfeld) abgespeichert?
              String oder Date?

              ciao
              romy

              --
              DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
              sh:( fo:| ch:? rl:( br:& va:| zu:) ss:| ls:[
              Die Erklärung zum Selfcode findest du hier: http://emmanuel.dammerer.at/selfcode.html
              Einen Decoder für den Selfcode findest du hier: http://peter.in-berlin.de/projekte/selfcode
              1. hi,

                Als was sind meine Datumsfelder(mein Datumsfeld) abgespeichert?
                String oder Date?

                ich tippe stark auf strings, was die sortierung 'erklären' würde.

                gruss,
                wahsaga

      2. hi,

        das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
        01.01.1995
        01.01.2000
        04.02.1995
        23.07.1999
        Was tust Du dafür?
        Die Sortierung hängt von Dir ab.
        Wer sortiert PHP oder die Datenbank?
        Quellcode wäre angenehm.
        <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
        if($order=="datum" && $folge=="ASC")
        {   echo("DESC");   } else {   echo("ASC");   }

        dieser code scheint einen _link_ auszugeben.

        wo ist die stelle, an der _sortiert_ wird?

        am einfachsten wäre dein problem durch ein geeignetes datenformat innerhalb der tabelle zu lösen (siehe datums- und zeittypen im mysql-manual) (ich hoffe ich gehe nicht völlig zu unrecht davon aus, dass du mysql verwendest?).

        wenn du jedoch ein textfeld für's datum genommen hast, wirst du um eine kompliziertere umformung des datums vor der sortierung nicht herumkommen.
        irgendwann rächt sich ein schlecht durchdachtes datenmodell halt immer ...

        gruss,
        wahsaga

        1. hi,

          das problem was ich habe ist das er mir zwar das datum sortiert ausgibt aber nach tagen sortiert
          01.01.1995
          01.01.2000
          04.02.1995
          23.07.1999
          Was tust Du dafür?
          Die Sortierung hängt von Dir ab.
          Wer sortiert PHP oder die Datenbank?
          Quellcode wäre angenehm.
          <a href="<?php echo($PHP_SELF); ?>?order=datum&folge=<?PHP
          if($order=="datum" && $folge=="ASC")
          {   echo("DESC");   } else {   echo("ASC");   }
          dieser code scheint einen _link_ auszugeben.

          wo ist die stelle, an der _sortiert_ wird?

          am einfachsten wäre dein problem durch ein geeignetes datenformat innerhalb der tabelle zu lösen (siehe datums- und zeittypen im mysql-manual) (ich hoffe ich gehe nicht völlig zu unrecht davon aus, dass du mysql verwendest?).

          wenn du jedoch ein textfeld für's datum genommen hast, wirst du um eine kompliziertere umformung des datums vor der sortierung nicht herumkommen.
          irgendwann rächt sich ein schlecht durchdachtes datenmodell halt immer ...

          gruss,
          wahsaga

          besten dank,
          ja ich arbeite mit mysql,
          die datenbank wurde vor jahren angelegt und ich arbeit mich müüü seelig darein!

  2. Hallo,

    ich hatte vor ein paar Tagen schon einmal darauf hingewiesen, dass 04.02.1995 etc. ein als "deprecated" bezeichnetes Datumsformat bezeichnet, das also bald nicht mehr verwendet werden soll. DIN 5008 etwa schreibt das Datumsformat JJJJ-MM-TT vor, im Beispiel also 1995-02-04. Ähnliches regelt eine EU- und die ISO-Norm 8601:

    http://www.pjh2.de/datetime/iso8601/index.php?l=de

    Insbesondere zum Sortieren ist das neue Datumsformat, das von internationalen Firmen fast ausschließlich nur noch verwendet wird, ideal! Einfach alphanumerisch sortieren!

    Guillermo