Najbliższą analogią jest SWITCH()
funkcja np.
Wyrocznia:
SELECT supplier_name,
decode(supplier_id, 10000, 'IBM',
10001, 'Microsoft',
10002, 'Hewlett Packard',
'Gateway') result
FROM suppliers;
Dostęp do silnika bazy danych
SELECT supplier_name,
SWITCH(supplier_id = 10000, 'IBM',
supplier_id = 10001, 'Microsoft',
supplier_id = 10002, 'Hewlett Packard',
TRUE, 'Gateway') AS result
FROM suppliers;
Zauważ, że za pomocą SWITCH()
funkcji, musisz za każdym razem podać pełny predykat, więc nie musisz ograniczać się do używania tylko id_dostawcy. Dla wartości domyślnej użyj predykatu, który jest oczywisty dla czytelnika, że jest PRAWDA, np. 1 = 1
lub po prostu TRUE
:)
Coś, co może nie być oczywiste, to fakt, że logika SWITCH()
funkcja nie powoduje zwarcia, co oznacza, że każde wyrażenie w funkcji musi mieć możliwość bezbłędnej oceny. Jeśli potrzebujesz logiki do zwarcia, będziesz musiał użyć zagnieżdżonej IIF()
funkcje.