Daniel: Nach mehreren Kriterien sortieren

Beitrag lesen

SELECT ordersatz,artikelnr_intern,ueberschrift,anzahl_lagernd FROM artikel ORDER BY ordersatz,artikelnr_intern,anzahl_lagernd ASC

...nun wird zwar nach "anzahl_lagernd" Aufsteigend sortiert, nach den anderen beiden jedoch standardmässig Absteigend sortiert, da sich das ASC ja nur auf das unmittelbar davorstehende Feld bezieht
Nein, standardmäßig wird aufsteigend sortiert.

Ja genau. sorry habe mich vertan :)

Folgender Versuch geht auch nicht so wie ich es will:

SELECT ordersatz,artikelnr_intern,ueberschrift,anzahl_lagernd FROM artikel ORDER BY ordersatz ASC,artikelnr_intern ASC,anzahl_lagernd ASC

bewirkt genau das gleiche wie die 1. Abfrage
Ja, klar, weil ASC eben Standard ist ;-))

Du weißt aber schon, dass die Datensätze durch die Sortierung nicht "auseinandergerissen" werden? Dein Statement sortiert die _Datensätze_ hauptsächlich nach ordersatz (aufsteigend, also vom Kleinsten zum Größten). Bei identischen Werten im Feld ordersatz, werden _diese_ Datensätze nach artikelnr_intern sortiert und _nur_ für Datensätze, die identische Werte in den Feldern ordersatz _und_ artikelnr_intern haben, greift die Sortierung nach anzahl_lagernd.

Also ich habe da nocheinmal getestet, eigentlich sortiert Mysql überhaupt nur die 1. Spalte :

Pos     a-nr    o-satz  name            lagernd
1   0   0   testartikel     0
2  0  1967  testartikel  8
3  10000  1967  testartikel  8
4  10000  1967  testartikel  8
5  10000  1967  testartikel  8
6  10000  1967  testartikel  8
7  10000  1967  testartikel  8
8  10000  1967  testartikel  8
9  10008  1967  testartikel  8
10  10010  1967  testartikel  8
11  10011  1967  sdad          15
12  10012  1967  sdad          4
13  10013  1967  sdad          4
14  10014  1967  sdad          4
15  10015  1967  sdad          4
16  10016  1057  21          1
17  10017  1967  1          11111111
18  10018  1967  1          11111111
19  10019  1967  1          11111111
20  10020  1967  1          11111111
21  10021  1967  1          11111111
22  10022  1967  1          11111111
23  10023  1967  1          11111111
24  10024  1967  1          11111111
25  10025  1057  efd          256
26  10026  1057  efd          256
27  10027  1057  Vanady-200stk.  8

Verstehe ich nicht wieso

mfg,
Daniel