Date & Time
DuckDB
DAYOFWEEK
Mengekstrak hari dalam minggu dari tanggal. Mengembalikan 0 (Minggu) sampai 6 (Sabtu) dalam standar ISO.
Tipe hasil:
INTEGERDiperbarui: 6 Jan 2026Syntax
SQL
DAYOFWEEK(date)Parameter
dateDATE/TIMESTAMPwajib
Tanggal atau timestamp yang akan diambil hari minggunya
Contoh Penggunaan
Mendapatkan Hari dalam Minggu
SQL
1 SELECT 2 order_date, 3 DAYOFWEEK(order_date) as dow_num, 4 CASE DAYOFWEEK(order_date) 5 WHEN 0 THEN 'Minggu' 6 WHEN 1 THEN 'Senin' 7 WHEN 2 THEN 'Selasa' 8 WHEN 3 THEN 'Rabu' 9 WHEN 4 THEN 'Kamis' 10 WHEN 5 THEN 'Jumat' 11 WHEN 6 THEN 'Sabtu' 12 END as day_name 13 FROM orders 14 LIMIT 5;
Mengkonversi angka hari ke nama hari.
Hasil
| order_date | dow_num | day_name |
|---|---|---|
| 2024-06-15 | 6 | Sabtu |
| 2024-06-14 | 5 | Jumat |
| 2024-06-13 | 4 | Kamis |
Analisis Weekday vs Weekend
SQL
1 SELECT 2 CASE 3 WHEN DAYOFWEEK(sale_date) IN (0, 6) THEN 'Weekend' 4 ELSE 'Weekday' 5 END as day_type, 6 COUNT(*) as transaction_count, 7 SUM(amount) as total_sales 8 FROM sales 9 GROUP BY day_type;
Membandingkan penjualan weekday vs weekend.
Hasil
| day_type | transaction_count | total_sales |
|---|---|---|
| Weekday | 15000 | 8500000000 |
| Weekend | 8500 | 6200000000 |
Pola Penjualan per Hari
SQL
1 SELECT 2 DAYOFWEEK(order_date) as day_num, 3 COUNT(*) as orders, 4 ROUND(AVG(amount), 0) as avg_order 5 FROM orders 6 GROUP BY DAYOFWEEK(order_date) 7 ORDER BY day_num;
Melihat distribusi order per hari dalam minggu.
Hasil
| day_num | orders | avg_order |
|---|---|---|
| 0 | 2100 | 520000 |
| 1 | 3500 | 450000 |
| 2 | 3200 | 480000 |
| ... |