FIND_IN_SET Funktion wird den Trick
tun %Vor%EDIT: Beachten Sie das Fehlen von Leerzeichen im String-Argument der Funktion find_in_set.
Sehen Sie sich die ORDER BY FIELD von mysql an. Ich denke, es wird genau das tun, was du willst.
Einfache Antwort:
Instrumentieren Sie Ihre Daten mit einem anderen "ordering" int-Feld und ORDER BY-Feld. Dies sollte die meiste Zeit alles sein, was notwendig ist. Ich habe das erfolgreich gemacht, wo Kunden bestimmte Produkte in eine Liste mit Funktionen blenden können, indem sie niedrige Werte wie -1 oder -99 in das Bestellfeld eingeben.
Komplexe Antwort:
Dies würde gelten, wenn Sie diese Reihenfolge normalisieren wollten, und wenn Sie vielleicht ein anderes Feld als zweiten Faktor in der Reihenfolge hatten, das ist bereits in Ihrer Haupttabelle. Dies würde auch hilfreich sein, wenn Sie jedem Bestellpunkt andere Informationen wie z. B. eine Notiz zuordnen. Oder wenn viele Tabellen diese willkürliche Reihenfolge implementieren und Sie diese Reihenfolge von einem Ort aus orchestrieren / ändern möchten.
Was Sie tun würden, ist die "willkürliche" Reihenfolge in einer Tabelle zu platzieren, der Sie beitreten können, und dann nach diesem Feld zu sortieren:
%Vor%Tags und Links mysql sql-order-by where-in