Nejbližší analogií je SWITCH()
funkce např.
Oracle:
SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
10001, 'Microsoft',
10002, 'Hewlett Packard',
'Gateway') result
FROM suppliers;
Access 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;
Všimněte si, že pomocí SWITCH()
musíte pokaždé zadat celý predikát, takže nejste omezeni pouze na použití id_dodavatele. Pro výchozí hodnotu použijte predikát, o kterém je lidskému čtenáři zřejmé, že je PRAVDA, např. 1 = 1
nebo skutečně jednoduše TRUE
:)
Něco, co nemusí být zřejmé, je logika v SWITCH()
funkce nezkratuje, to znamená, že každý výraz ve funkci musí být schopen bezchybně vyhodnotit. Pokud potřebujete logiku ke zkratu, budete muset použít vnořený IIF()
funkce.