Conditional
DuckDB
NULLIF
Mengembalikan NULL jika value1 sama dengan value2, otherwise mengembalikan value1. Berguna untuk menghindari division by zero.
Tipe hasil:
Tipe dari value1 atau NULLDiperbarui: 16 Mei 2026Syntax
SQL
NULLIF(value1, value2)Parameter
value1ANYwajib
Nilai yang akan dikembalikan jika berbeda
value2ANYwajib
Nilai pembanding
Contoh Penggunaan
Hindari Division by Zero
SQL
1 SELECT 2 product_name, 3 revenue / NULLIF(quantity, 0) AS avg_price 4 FROM sales;
NULLIF(quantity, 0) return NULL jika quantity = 0.
Convert Empty String ke NULL
SQL
1 SELECT 2 customer_name, 3 NULLIF(phone, '') AS phone 4 FROM customers;
Mengkonversi empty string menjadi NULL.
Handling Placeholder Values
SQL
1 SELECT 2 employee_name, 3 NULLIF(department, 'N/A') AS department, 4 NULLIF(manager_id, -1) AS manager_id 5 FROM employees;
Mengkonversi placeholder values ke NULL.
Dalam Perhitungan Persentase
SQL
1 SELECT 2 category, 3 SUM(sales) AS total_sales, 4 SUM(returns) AS total_returns, 5 ROUND( 6 SUM(returns) * 100.0 / NULLIF(SUM(sales), 0), 7 2 8 ) AS return_rate 9 FROM transactions 10 GROUP BY category;
Safe percentage calculation.
Pertanyaan Umum tentang NULLIF
Apa itu fungsi NULLIF di DuckDB?
Mengembalikan NULL jika value1 sama dengan value2, otherwise mengembalikan value1. Berguna untuk menghindari division by zero. Di DuckDB, fungsi NULLIF termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan NULLIF di DuckDB?
Gunakan sintaks berikut: NULLIF(value1, value2). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi NULLIF?
Fungsi NULLIF mengembalikan nilai bertipe Tipe dari value1 atau NULL. 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 NULLIF?
Fungsi ini memiliki 2 parameter wajib. Parameter yang digunakan: value1 (ANY, wajib): Nilai yang akan dikembalikan jika berbeda; value2 (ANY, wajib): Nilai pembanding.