ORDER BY NUMMER ( 10 vor 2? )

also, ich hab ein problem mit dem dezimalsystem von computern, mir wird logischerweisse mit dieser abfrage

SELECT * FROM `****` ORDER BY `nummer` DESC LIMIT 1;

nummer is INT

wenn ich nummern von 1-10 hab bekomme ich das:

1,10,2,3,4,5,6,7,8,9

ich will aber

1,2,3,4,5,6,7,8,9,10

ich weiss zwar wie ich das jetzt mit PHP im nachhinein schlichten könnte, aber ich willst direkt in die abfrage, wie mach ich denn das?

ps: mit dieser abfrage oben würde ich 9 als result bekommen statt 10, das is das problem

Solange dein Vorhaben mit MySQL zusammenhängt, ist das kein problem.
MySQL wird die Abfrage mit

ORDER BY `nummer` ASC

automatisch erreichen das deine zahlen wie folgt geordnet wären

1,2,3,4,5,6,7,8,9,10

und by

ORDER BY `nummer` DESC

so

10,9,8,7,6,5,4,3,2,1

Das beste Beispiel dafür, dass es funktioniert, ist die Auto_increment funktion.
diese wird in fast allen gästebüchern benutzt und zeigt eindeutig das mysql mit der numerierung klar kommt

übrigens, zum merken:
ASC - ASCENDERE (lat.) - aufsteigen(d)
1,2,3,…
DESC - DESCENDERE (lat.) - absteigen(d)
10,9,8,…

Ich glaube, es geht ihm irgendwie mehr um die Reihenfolge, normalerweise kommt 2 vor der 10 :wink:

Wenns so ist, dann müsste es helfen, wenn du vor die zahlen, die nur aus einer ziffer bestehen eine 0 schreibst.

tja, die frage is nun wie ich eben vor viele datensätze immer die 0 bekommen würde.

@frank: bei mir ordnet MySQL aber nicht in natürlicher reihenfolge

oooohhh… hab grad entdeckt, dass mein datentyp text und nicht int is… fuck. mal sehn ob ich das ohne verlust ändern kann

edit:
hat geklappt, tut mir leid der irrtum, kann geschlossen werden