L'analogie la plus proche est le SWITCH()
fonction par ex.
Oracle :
SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
10001, 'Microsoft',
10002, 'Hewlett Packard',
'Gateway') result
FROM suppliers;
Accéder au moteur de base de données
SELECT supplier_name,
SWITCH(supplier_id = 10000, 'IBM',
supplier_id = 10001, 'Microsoft',
supplier_id = 10002, 'Hewlett Packard',
TRUE, 'Gateway') AS result
FROM suppliers;
Notez qu'avec le SWITCH()
fonction, vous devez fournir le prédicat complet à chaque fois, vous n'êtes donc pas limité à l'utilisation de supplier_id. Pour la valeur par défaut, utilisez un prédicat qui est évident pour le lecteur humain qu'il est VRAI, par ex. 1 = 1
ou bien simplement TRUE
:)
Quelque chose qui peut ne pas être évident est que la logique dans le SWITCH()
La fonction ne court-circuite pas, ce qui signifie que chaque expression de la fonction doit pouvoir être évaluée sans erreur. Si vous avez besoin d'une logique pour court-circuiter, vous devrez utiliser IIF()
imbriqué fonctions.