Conditional

NVL

DuckDBDuckDB

Mengembalikan nilai pertama jika tidak NULL, jika NULL mengembalikan nilai kedua. Alias Oracle-style dari IFNULL/COALESCE.

Tipe hasil: Sama dengan tipe inputDiperbarui: 16 Mei 2026

Syntax

SQL
NVL(expression, replacement)

Parameter

expressionanywajib

Nilai yang akan dicek NULL-nya

replacementanywajib

Nilai pengganti jika expression NULL

Contoh Penggunaan

Replace NULL dengan Default

SQL
1SELECT
2 customer_name,
3 NVL(phone, 'No Phone') as phone,
4 NVL(email, 'No Email') as email
5FROM customers;

Mengganti NULL dengan teks default.

Hasil
customer_namephoneemail
Budi08123456789budi@email.com
AniNo Phoneani@email.com
Eko08234567890No Email

Default Value untuk Perhitungan

SQL
1SELECT
2 product_name,
3 price,
4 discount_percent,
5 price * (1 - NVL(discount_percent, 0) / 100) as final_price
6FROM products;

Menggunakan 0 sebagai default jika discount NULL.

Hasil
product_namepricediscount_percentfinal_price
Laptop1500000101350000
Phone800000NULL800000
Tablet5000005475000

Handling NULL in Aggregations

SQL
1SELECT
2 department,
3 SUM(NVL(bonus, 0)) as total_bonus,
4 AVG(NVL(bonus, 0)) as avg_bonus
5FROM employees
6GROUP BY department;

Memperlakukan NULL bonus sebagai 0 dalam agregasi.

Hasil
departmenttotal_bonusavg_bonus
IT150000003000000
Sales250000005000000
HR50000002500000

Pertanyaan Umum tentang NVL

Apa itu fungsi NVL di DuckDB?
Mengembalikan nilai pertama jika tidak NULL, jika NULL mengembalikan nilai kedua. Alias Oracle-style dari IFNULL/COALESCE. Di DuckDB, fungsi NVL termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan NVL di DuckDB?
Gunakan sintaks berikut: NVL(expression, replacement). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi NVL?
Fungsi NVL mengembalikan nilai bertipe Sama dengan tipe input. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi NVL?
Fungsi ini memiliki 2 parameter wajib. Parameter yang digunakan: expression (any, wajib): Nilai yang akan dicek NULL-nya; replacement (any, wajib): Nilai pengganti jika expression NULL.