Date & Time
DuckDB
EXTRACT
Mengekstrak komponen tertentu dari nilai date atau timestamp. Mengembalikan nilai numerik.
Tipe hasil:
BIGINT (atau DOUBLE untuk EPOCH)Diperbarui: 6 Jan 2026Syntax
SQL
EXTRACT(field FROM date/timestamp)Parameter
fieldVARCHARwajib
Komponen yang diekstrak: YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, DOW, DOY, WEEK, QUARTER, EPOCH
date/timestampDATE/TIMESTAMPwajib
Nilai tanggal atau timestamp
Contoh Penggunaan
Ekstrak Tahun dan Bulan
SQL
1 SELECT 2 EXTRACT(YEAR FROM order_date) as year, 3 EXTRACT(MONTH FROM order_date) as month, 4 COUNT(*) as orders 5 FROM orders 6 GROUP BY 1, 2 7 ORDER BY 1, 2;
Menghitung order per tahun dan bulan.
Hasil
| year | month | orders |
|---|---|---|
| 2024 | 1 | 1250 |
| 2024 | 2 | 1380 |
| 2024 | 3 | 980 |
Analisis Hari dalam Seminggu
SQL
1 SELECT 2 EXTRACT(DOW FROM order_date) as day_of_week, 3 CASE EXTRACT(DOW FROM order_date) 4 WHEN 0 THEN 'Minggu' 5 WHEN 1 THEN 'Senin' 6 WHEN 2 THEN 'Selasa' 7 WHEN 3 THEN 'Rabu' 8 WHEN 4 THEN 'Kamis' 9 WHEN 5 THEN 'Jumat' 10 WHEN 6 THEN 'Sabtu' 11 END as day_name, 12 COUNT(*) as orders 13 FROM orders 14 GROUP BY 1, 2 15 ORDER BY 1;
Menganalisis distribusi order per hari dalam seminggu.
Ekstrak Jam
SQL
1 SELECT 2 EXTRACT(HOUR FROM created_at) as hour, 3 COUNT(*) as signups 4 FROM users 5 GROUP BY 1 6 ORDER BY 1;
Menghitung signup per jam.
Konversi ke Unix Timestamp
SQL
1 SELECT 2 order_date, 3 EXTRACT(EPOCH FROM order_date) as unix_timestamp 4 FROM orders 5 LIMIT 5;
Mengkonversi tanggal ke Unix timestamp.