MySQL Navigation sortieren

calconeon

Grünschnabel
Wie ist es ungefähr möglich, die Einträge einer bereits vorhandenen Navigation so zu sortieren, wie ich es möchte, also nicht alphabetisch und nicht numerisch.

Irgendwie hab ich keine Idee für in Grundprinzip... Kann mir jemand ein Tipp geben?

Wär echt hilfreich.
 
Ein feld hinzufügen z.B Pos als Integer machst deine Position rein wie du sie möchtest und lässt
mysql nach Pos sortiert ausgeben
 
Gut.

Und wie administiere ich das?

Also mein Problem ist eigentlich, dass ich nicht weiß, wie ich dann solche Funktionen wie herunterschieben und heraufschieben realisieren soll, weil ich kein SQL-Befehl zum Austauschen von Werten kenne...

Tut mir Leid hab mich vlt. ein bisschen ungündtig ausgedrückt.
 
Hi,

also wenn du eine neue Spalte erstellst, die z.B. position heisst, und diese mit Werten von 1-n füllst kannst du beim SELECT danach sortieren (ORDER BY position).

z.B.
Code:
name|position
startseite|1
links|2
kontakt|3

Dann kannst du mit
Code:
SELECT * from db.tbl ORDER BY position
die Reihenfolge sortieren.
 
Schieben:
Code:
UPDATE tabelle SET position=position+1 WHERE position={zu_verschiebendes_element}
UPDATE tabelle SET position=position=position-1 WHERE position={zu_verschiebendes_element}+1
Um in die andere Richtung zu verschieben, + und - vertauschen.
 
So, ich hab jetzt aber ein echts Problem:

Die Navigation ist folgendermaßen aufgebaaut (ein Auszug)

Code:
id   	int(3)
id_sub  	int(3)
ebene  	int(1)
name  	varchar(70)

Also n Beispiel:

Code:
01 01 1 Index
02 01 2 Sub_Index 1
03 01 2 Sub_Index 2
04 01 2 Sub_Index 3
05 05 1 Punkt 2
06 01 2 Sub_Index 4

Der Vorteil ist, dass ich endlos viele Ebenen machen kann.

So, aber wie lautet nun der SQL-Befehl, damit der automatisch die Kategorien einer Ebenen ihrer übergeodneten Zuordnet. Also das das rotgemachte auch nach Index und nicht erst nach Punkt 2 kommt. Und ich würde gern bei einer Abfrage bleiben.

Danke, wenn ihr mir hier auf die Sprünge helft, bin ich euch echt was schuldig ^^
 
Zurück