WinFuture-Forum.de: Mysql Order - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Mysql Order


#1 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 05. Dezember 2009 - 16:00

Hallo Leute ich hab folgende Frage:


Ich habe eine Tabelle (ID,Name,Fach, Datum)

SO eigendlich funktioniert die Sortierung nach Datum DESC

Jetzt möchte ich aber folgendes: Wenn bei Fach nichts eingetragen ist (NULL) dann soll es mir zuerst alle anzeigen wo das FACH NULL ist und dann normal nach den DATUM weitersortieren.

jetzt habe ich folgendes angewant Order by Fach, Datum DESC

so jetzt soritert er mir aber logischerweise zuerst nach fach zuersrt NULL,1,2,3,4,..... und dann kommt das mit dem Datum durcheinander.

Soll zustand:
Also zuerst alles anzeigen wo FACH NULL ist und dann normal nach dem DAtum weiter sortieren

Gibt es da eine Lösung dies über ORDER BY zu lösen?

Vielen lieben dank für eure bemühungen
0

Anzeige



#2 Mitglied ist offline   h-a-n-n-e-s 

  • Gruppe: aktive Mitglieder
  • Beiträge: 824
  • Beigetreten: 11. August 06
  • Reputation: 1

geschrieben 05. Dezember 2009 - 16:52

Hallo,

probiers mal so

SELECT * FROM deinetabelle ORDER BY Fach ASC, Datum ASC


Wenn du das Datum anders sortiert haben willst, dann musst du eben das letzte "ASC" im Code durch "DESC" ersetzen.

Dieser Beitrag wurde von h-a-n-n-e-s bearbeitet: 05. Dezember 2009 - 16:56

Eingefügtes Bild
0

#3 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 06. Dezember 2009 - 10:35

hallo

das war mir schon klar
nur jetzt sortiert er mir zuerst alles nach FACH

also zuerst alle wo FACH 0 ist dann alle wo Fach 1 ist und dann wieder alle wo FAch 2 ist
und jeweils bei fach 1 alles nach datum dann wieder fach 2 alles nach datum...

z.b:
ID,FACH,Datum
1,0,6.12.2009
1,0,7.12.2009
1,1,6.12.2009
1,1,7.12.2009
1,2,6.12.2009
1,2,7.12.2009

es sollte aber so ausschauen: also zuerst nur nach fach solang es 0 ist dann nach datum
1,0,6.12.2009
1,0,7.12.2009
1,1,6.12.2009
1,2,6.12.2009
1,1,7.12.2009
1,2,7.12.2009
0

#4 Mitglied ist offline   TO_Webmaster 

  • Gruppe: Moderation
  • Beiträge: 3.225
  • Beigetreten: 27. März 02
  • Reputation: 82
  • Geschlecht:Männlich

geschrieben 06. Dezember 2009 - 11:23

Wenn da wirklich NULL steht, dann so:
SELECT * FROM deinetabelle ORDER BY IF( Fach IS NULL, NULL, Datum ), Fach


Wenn da 0 steht statt NULL, musst du das entsprechend anpassen.

MfG TO_Webmaster
The old reverend Henry Ward Beecher
called a hen the most elegant creature.
The hen pleased for that,
laid an egg in his hat.
And so did the hen reward Beecher.
0

#5 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 06. Dezember 2009 - 19:56

wow spitze funktioniert... vielen lieben dank an euch 2 :(
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0