Est-ce juste un ORDER BY
ou quelque chose que vous voulez faire souvent et sur plus de valeurs que spécifié ici?
L'ordre que vous avez donné est arbitraire, donc un identifiant doit être donné pour obtenir ce que vous voulez
SELECT
ID,
Code,
CASE Code
WHEN 'Health' THEN 1
WHEN 'Phone' THEN 2
WHEN 'Freeze' THEN 3
WHEN 'Hot' THEN 4
END As OrderBy
FROM Table
ORDER BY
OrderBy
Ou
SELECT
ID,
Code
FROM Table
ORDER BY
CASE Code
WHEN 'Health' THEN 1
WHEN 'Phone' THEN 2
WHEN 'Freeze' THEN 3
WHEN 'Hot' THEN 4
END
(je ne suis pas familier avec MySQL, mais ce qui précède fonctionnerait dans SQL Server.La syntaxe pour MySQL ne sera pas trop différente)
Si vous êtes susceptible de vouloir le faire souvent , puis créez une colonne OrderBy sur la table ou créez une table OrderBy avec un lien FK vers cette table et spécifiez un champ numérique OrderBy dans celle-ci.
Pourquoi Phone est là deux fois? – pjp