Benutzer-Werkzeuge

Webseiten-Werkzeuge


db:mysql:find_in_set

Datensätze sortieren mit FIND_IN_SET

Für dieses Beispiel wurde eine MySSQL-Tabelle mit dem Namen „Spiele“ angelegt. Die Einträge in dieser Tabelle wurden beim Anlegen alphabetisch nach dem Wochentag angelegt:

MySQL-Tabelle „Spiele“

idWochentagSpiel
1Dienstagkein Spiel
2Donnerstagkein Spiel
3FreitagEurojackpot
4MittwochMittwochslotto
5Montagkein Spiel
6SamstagSamstagslotto
7Sonntagkein Spiel

Mit der MySQL-Funktion „FIND_IN_SET“ kann das Ergebnis einer mySQL-Abfrage in der richtigen Reihenfolge der Wochentage sortiert werden:

SELECT * FROM Spiele
ORDER BY FIND_IN_SET( Wochentag, 'Montag,Dienstag,Mittwoch,Donnerstag,Freitag,Samstag,Sonntag' );

Ergebnis der MySQL-Abfrage

idWochentagSpiel
5Montagkein Spiel
1Dienstagkein Spiel
4MittwochMittwochslotto
2Donnerstagkein Spiel
3FreitagEurojackpot
6SamstagSamstagslotto
7Sonntagkein Spiel

Die Funktion „FIND_IN_SET“ weißt beim Aufruf jedem übergebenden Wert einen numerischen Wert (beginnend bei 1) zu. Daher können die Ergebnisse nach den numerischen Wert sortiert werden.

db/mysql/find_in_set.txt · Zuletzt geändert: 2018/10/20 23:22 (Externe Bearbeitung)