To jest przykładowa tabela:
name | cat
----------
hugo | sal
bob | mgr
mike | dev
jeff | mgr
john | dev
Zarówno name
i cat
bycia Varchar.
cat
odzwierciedla kategorię dla tych nazw, ale lubię przypisywać im priorytet, a następnie zapytanie z listą wszystkich, uporządkowane według tego priorytetu.
Jakie są możliwe sposoby? Mógłbym wyodrębnić cat
do drugiej tabeli, zbudować klucz obcy itp. Ale biorąc pod uwagę, że moja aplikacja jest bardzo prosta, a struktura może być niezmienna: Jakie możliwości muszę mgr
najpierw wymienić nazwy, następnie dev
nazwy, a następnie sal
nazwy ?
case
wyrażenie (jak się to nazywa) jest ważne wszędzie tam, gdzie można podać kolumnę; oraz b) wyrażenie można nieco uprościć docase `cat` when 'mgr' then 1 when 'dev' then 2 else 3 end