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: 6 Jan 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.