Dies ist eine Beispieltabelle:
name | cat
----------
hugo | sal
bob | mgr
mike | dev
jeff | mgr
john | dev
Beides name
und cat
Varchar sein.
cat
spiegelt eine Kategorie für diese Namen wider, aber ich möchte ihnen eine Priorität zuweisen, gefolgt von einer Abfrage, um sie alle aufzulisten, geordnet nach dieser Priorität.
Welche Wege sind möglich? Ich könnte cat
in eine zweite Tabelle extrahieren , einen Fremdschlüssel erstellen usw. Aber meine App ist sehr einfach und die Struktur kann nicht geändert werden: Welche Möglichkeiten habe ich, um die mgr
Namen zuerst, gefolgt von den dev
Namen, gefolgt von den sal
Namen aufzulisten ?
case
Ausdruck (wie dieser genannt wird) ist überall dort gültig, wo eine Spalte angegeben werden kann; und b) der Ausdruck kann leicht vereinfacht werden zucase `cat` when 'mgr' then 1 when 'dev' then 2 else 3 end