Functia DECODE

Permite decodificarea unei expresii într-un   mod similar logicii IF-THEN-ELSE. Decodificarea expresiei  se face prin compararea unei expresii cu  valorile de cautare, si  prin întoarcerea rezultatului corespunzator ramurii pe care s-a gasit  similitudinea.Forma generala este:
 
DECODE (col /expresie, expc1, rez1
[, expc2, rez2, …]
[, default])
Exemple:
SELECT marca, nume, colaborator,
    DECODE (colaborator,
                    ‘N’, ‘Angajat permanent’,
                    ‘D’, ‘Colaborator’,
                    ‘Nu este specificat!’) AS Tip_angajat
FROM personal;

 

SELECT nume, salariu,

        DECODE (trunc (salariu/2000,0),
                                    0, 0.00,
                                    1, 0.09,
                                    2, 0.20,
                                    3, 0.30,
                                        0.45)  comision
FROM angajati
WHER id_dep = 80;