Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Jumlahkan kolom dengan nilai nol di Oracle

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:

  1. NVL
  2. NVL2
  3. COALESCE
  4. NULLIF
  5. 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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara mengembalikan parameter keluaran Oracle dari prosedur tersimpan di .NET

  2. Oracle Managed ODP.NET tidak dapat menemukan tnsnames.ora

  3. Buat pengguna dari variabel string di blok PL/SQL

  4. cara mengonversi csv ke tabel di oracle

  5. Pustaka terkelola ODP.NET tidak menyelesaikan alias, tetapi pustaka 32-bit melakukannya