dedlfix: SQL Order by

Beitrag lesen

Hi!

Ich möchte meine Daten ordnen, allerdings nicth einfach auf- oder absteigend, sondern nach folgender Ordnung (alles Inhalte der Spalte "Stimme"):

Definiere für jeden der Werte einen sortierbaren Wert. Frag mit dem CASE-WHEN-Konstrukt oder geschachtelter IF()-Funktionen (Falls dein DBMS die kennt), welcher Wert vorliegt und gib den entsprechenden Sortierwert zurück.

Dabei entsteht ein recht aufwendiges Statement. Alternativ wäre es möglich, die Stimmen nicht als Klartext in der Mitgliedertabelle zu speichern sondern eine eigene Tabelle dafür anzulegen. Diese bekommt die Spalten: ID, Name, Sortierwert. In der Tabelle mit den Mitgliedern gibt es dann für die Stimme nur einen Verweis auf deren ID. Mittels eines JOINS kannst du die Stimmentabelle an die Mitgliedertabelle anknüpfen und den eigentlichen Stimmennamen und dessen Sortierwert nach Belieben verwenden.

Lo!