Aggregate
DuckDB
BOOL_OR
Mengembalikan TRUE jika SETIDAKNYA SATU nilai dalam grup adalah TRUE. FALSE hanya jika semua nilai FALSE. Equivalent dengan logical OR pada semua nilai.
Tipe hasil:
BOOLEANDiperbarui: 6 Jan 2026Syntax
SQL
BOOL_OR(expression)Parameter
expressionBOOLEANwajib
Kolom atau ekspresi boolean yang akan di-OR-kan
Contoh Penggunaan
Cek Apakah Ada Error dalam Batch
SQL
1 SELECT 2 batch_id, 3 BOOL_OR(has_error) as has_any_error 4 FROM batch_records 5 GROUP BY batch_id;
Mengecek apakah ada MINIMAL SATU record yang error dalam batch.
Hasil
| batch_id | has_any_error |
|---|---|
| B001 | false |
| B002 | true |
| B003 | true |
Deteksi Flagged Items
SQL
1 SELECT 2 order_id, 3 BOOL_OR(is_flagged) as needs_review, 4 BOOL_OR(is_high_value) as has_high_value_item, 5 SUM(amount) as total_amount 6 FROM order_items 7 GROUP BY order_id;
Mendeteksi order yang memerlukan review atau memiliki item high-value.
Hasil
| order_id | needs_review | has_high_value_item | total_amount |
|---|---|---|---|
| 1001 | false | true | 15000000 |
| 1002 | true | false | 2500000 |
| 1003 | false | false | 850000 |
Alert Monitoring
SQL
1 SELECT 2 server_group, 3 BOOL_OR(cpu_critical) as any_cpu_alert, 4 BOOL_OR(memory_critical) as any_memory_alert, 5 BOOL_OR(disk_critical) as any_disk_alert, 6 CASE 7 WHEN BOOL_OR(cpu_critical OR memory_critical OR disk_critical) 8 THEN '🔴 ALERT' 9 ELSE '🟢 OK' 10 END as status 11 FROM server_metrics 12 WHERE timestamp > NOW() - INTERVAL '5 minutes' 13 GROUP BY server_group;
Monitoring dashboard untuk mendeteksi ada tidaknya alert di setiap grup server.
Hasil
| server_group | any_cpu_alert | any_memory_alert | any_disk_alert | status |
|---|---|---|---|---|
| Production | false | true | false | 🔴 ALERT |
| Staging | false | false | false | 🟢 OK |