Ini adalah contoh tabel:
name | cat
----------
hugo | sal
bob | mgr
mike | dev
jeff | mgr
john | dev
Keduanya namedan catmenjadi Varchar.
cat mencerminkan kategori untuk nama-nama ini, tetapi saya ingin menetapkan prioritas untuknya, diikuti dengan kueri untuk mendaftarkan semuanya, diurutkan berdasarkan prioritas ini.
Cara apa yang mungkin? Saya dapat mengekstraksi catke dalam tabel kedua, membuat kunci asing, dll. Tetapi mengingat aplikasi saya sangat sederhana dan strukturnya mungkin tidak dapat diubah: Kemungkinan apa yang saya miliki untuk membuat daftar mgrnama terlebih dahulu, diikuti oleh devnama - nama, diikuti oleh salnama - nama ?
caseekspresi (seperti ini disebut) valid di mana saja kolom dapat ditentukan; dan b) ungkapan itu dapat sedikit disederhanakan menjadicase `cat` when 'mgr' then 1 when 'dev' then 2 else 3 end