A dekódolási funkció

Rovat: Konverziós függvények és feltételes kifejezések

Egyszerűsíti a feltételes lekérdezéseket a CASE kifejezés vagy az IF-THEN-ELSE kijelentés munkájával:

A DECODE funkció dekódolja a kifejezést az IF-THEN-ELSE-hez hasonlóan, amelyet különböző nyelveken használnak. A DECODE funkció dekódolja a kifejezést, miután összehasonlította azt az egyes keresési értékekkel. Ha a kifejezés megegyezik a keresési kifejezéssel. az eredményt visszaadják.







Ha az alapértelmezett érték el van hagyva, a null visszaadódik, ha a keresési érték nem egyezik az eredményértékekkel.

A DECODE funkciók használata

Az SQL utasításban a JOB_ID értéket az ábra szemlélteti. Ha JOB_ID az IT_PROG, a fizetésemelés 10%; ha a JOB_ID ST_CLERK, akkor a béremelés 15%; Ha a JOB_ID a SA_REP, a fizetésemelés 20%. Minden más típusú munka esetében a bérnövekedés nem következik be.







Ugyanaz az operátor lehet pszeudo-kódként kifejezve IF-THEN-ELSE kijelentésként:

IF job_id = 'IT_PROG', majd fizetés = fizetés * 1.10
IF job_id = 'ST_CLERK', majd fizetés = fizetés * 1.15
IF job_id = 'SA_REP' THEN fizet = fizetés * 1.20
ELSE fizetés = fizetés

Példa a DECODE funkciók használatára

A 80-as osztályon minden alkalmazottra vonatkozóan mutassa be az alkalmazandó adókulcsot:

Ez a szám egy másik példát mutat a DECODE funkció használatára. Ebben a példában a havi fizetés alapján határozza meg a 80-as részleg összes alkalmazottjának adókulcsait. Az adókulcsok a következők:




Kapcsolódó cikkek