Đây là một bảng mẫu:
name | cat
----------
hugo | sal
bob | mgr
mike | dev
jeff | mgr
john | dev
Cả hai namevà catlà Varchar.
cat phản ánh một danh mục cho những tên này, nhưng tôi muốn gán mức độ ưu tiên cho chúng, theo sau là một truy vấn để liệt kê tất cả, được sắp xếp theo thứ tự ưu tiên này.
Những cách có thể? Tôi có thể giải nén catvào một bảng thứ hai, xây dựng một chìa khóa, vv ngoại Nhưng với ứng dụng của tôi rất đơn giản và cấu trúc có thể là không thể thay đổi: Những khả năng làm tôi phải liệt kê các mgrtên đầu tiên, tiếp theo là devtên, tiếp theo là saltên ?
casebiểu thức (vì cái này được gọi) là hợp lệ ở bất cứ nơi nào một cột có thể được chỉ định; và b) biểu thức có thể được đơn giản hóa một chút thànhcase `cat` when 'mgr' then 1 when 'dev' then 2 else 3 end