Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Warum geht diese Sortierung nicht?

Bitte sagt jetzt nicht das diese Form des Speicherns eines Datums unelegant sei! Das weiß ich selbst. Ich habe aber keine Lust alle Funktionen und Tables zu ändern nur weil mein Vorgänger diese Methode gewählt hat.

Zum Problem:

SELECT * FROM events ORDER BY jahr,monat,tag DESC

ich bekomm folgende ausgabe:

event 12.3.2003
event 30.4.2003

eigentlich sollte doch folgendes Ergebnis richtig sein:

event 30.4.2003
event 12.3.2003

lässt man das DESC am ende des SELECT-Befehls weg passiert natürlich nichts! Also was könnte daran nicht stimmen? Die Felder tag,monat,jahr sind vom Typ INT und haben dementsprechende Längen 2 und 4.

Hier gehts zum Orginal Eintrag "Warum geht diese Sortierung nicht?" im Forum

Antworten

Bin mir nicht sicher, aber ich glaube das liegt daran, dass Du mehrere Attribute für ORDER angibst, bzw. MySQL die beiden anderen ignorierst, mit einem einzigem
Datumsfeld wär das alles kein Problem.
Aber wie gesagt, das ist nur eineVermutung .


2.

wenn du die reihenfolge änderst?

SELECT * FROM events ORDER BY tag,monat,jahr DESC


3.

also die Priorität der Sortierung geht natürlich von links nach rechts! Ich kann also nicht verstehen warum der die f***ing Tabelle nicht richtig sortiert!


4.

SELECT * FROM events ORDER BY jahr DESC,monat DESC,tag DESC


Hier gehts zum Orginal Eintrag "Warum geht diese Sortierung nicht?" im Forum
 
phpforum.de | Impressum