De dichtstbijzijnde analogie is de SWITCH()
functie bijv.
Orakel:
SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
10001, 'Microsoft',
10002, 'Hewlett Packard',
'Gateway') result
FROM suppliers;
Toegang tot database-engine
SELECT supplier_name,
SWITCH(supplier_id = 10000, 'IBM',
supplier_id = 10001, 'Microsoft',
supplier_id = 10002, 'Hewlett Packard',
TRUE, 'Gateway') AS result
FROM suppliers;
Merk op dat met de SWITCH()
functie moet je elke keer het volledige predikaat opgeven, dus je bent niet beperkt tot het gebruik van alleen supplier_id. Gebruik voor de standaardwaarde een predikaat dat voor de menselijke lezer duidelijk is dat het WAAR is, b.v. 1 = 1
of eigenlijk gewoon TRUE
:)
Iets dat misschien niet duidelijk is, is dat de logica in de SWITCH()
functie maakt geen kortsluiting, wat betekent dat elke uitdrukking in de functie foutloos moet kunnen worden geëvalueerd. Als je logica nodig hebt om kort te sluiten, dan moet je geneste IIF()
. gebruiken functies.