NVL(nilai, default) adalah fungsi yang Anda cari.
select type, craft, sum(NVL(regular, 0) + NVL(overtime, 0) ) as total_hours
from hours_t
group by type, craft
order by type, craft
Oracle memiliki 5 fungsi terkait NULL:
- NVL
- NVL2
- COALESCE
- NULLIF
- LNNVL
NVL :
NVL(expr1, expr2)
NVL memungkinkan Anda mengganti null (dikembalikan sebagai kosong) dengan string dalam hasil kueri. Jika expr1 adalah null, maka NVL mengembalikan expr2. Jika expr1 bukan null, maka NVL mengembalikan expr1.
NVL2 :
NVL2(expr1, expr2, expr3)
NVL2 memungkinkan Anda menentukan nilai yang dikembalikan oleh kueri berdasarkan apakah ekspresi yang ditentukan adalah nol atau tidak. Jika expr1 bukan null, maka NVL2 mengembalikan expr2. Jika expr1 adalah null, maka NVL2 mengembalikan expr3.
COALESCE
COALESCE(expr1, expr2, ...)
COALESCE mengembalikan expr non-null pertama dalam daftar ekspresi. Setidaknya satu expr tidak boleh NULL literal. Jika semua kemunculan expr bernilai null, maka fungsi akan mengembalikan null.
NULLIF
NULLIF(expr1, expr2)
NULLIF membandingkan expr1 dan expr2. Jika mereka sama, maka fungsinya mengembalikan nol. Jika tidak sama, maka fungsi mengembalikan expr1. Anda tidak dapat menentukan NULL literal untuk expr1.
LNNVL
LNNVL(condition)
LNNVL menyediakan cara ringkas untuk mengevaluasi suatu kondisi ketika satu atau kedua operan dari kondisi tersebut mungkin nol.
Info lebih lanjut tentang Fungsi Oracle SQL