Ceci est un exemple de table:
name | cat
----------
hugo | sal
bob | mgr
mike | dev
jeff | mgr
john | dev
Les deux name
et cat
étant Varchar.
cat
reflète une catégorie de ces noms, mais j'aime leur attribuer une priorité, suivie d'une requête pour les énumérer tous, commandé par cette priorité.
Quelles voies sont possibles? Je pourrais extraire cat
dans une deuxième table, construire une clé étrangère, etc. Mais étant donné que mon application est très simple et que la structure peut être non modifiable: quelles possibilités dois-je énumérer le mgr
Les noms d'abord, suivis des noms dev
, suivi des noms sal
?
En supposant que vous ne puissiez pas changer votre structure, vous pouvez utiliser une instruction de cas dans votre commande par:
ORDER BY case cat when 'mgr' then 1 when 'dev' then 2 else 3
Si vous -CAN changer votre structure, vous pouvez créer une table Category
, y compris le code de catégorie et un classement, rejoignez votre table d'échantillonnage à la table Category
. par ce classement.