Um die Post-Flaute der letzten Tage zu unterbrechen, hier ein kurzer MySQL-Tipp:
Es kommt ab und an vor, dass man das Ergebnis eines Querys sortieren möchte, die standard Sortierfunktionen dafür aber nicht geeignet sind. An dieser Stelle kann man bei Strings auf einen Workaround per “LOCATE” zurückgreifen, was dann aussieht wie folgt:
SELECT
*
FROM
`fruechte`
ORDER BY
LOCATE(`sorte`, "birne apfel kiwi")
In diesem Beispiel würde die Tabelle “fruechte” komplett, nach der im “LOCATE” bestimmten Reihenfolge, ausgegeben werden. Als erstes die Birnen, dann die Äpfel und zuletzt die Kiwis.
Die Funktion “LOCATE” gibt die Position von `sorte` in dem definierten String zurück. Der kleinste, also vorderste Begriff steht damit oben.
Interessanter Ansatz! Mit deinem Beispiel bin ich aber nicht vollständig einverstanden, die Menge von Früchten als String zu verwalten birgt neben Redundanzen auch andere Probleme, z.B. folgendes:
SELECT
*
FROM
`fruechte`
WHERE
‘frucht’ = ‘apfel’
ORDER BY
LOCATE(`sorte`, "birne bratapfel kiwi apfel paradiesapfel")