Date & Time
DuckDB
DATE_DIFF
Menghitung selisih antara dua tanggal dalam unit tertentu. Mengembalikan nilai integer.
Tipe hasil:
BIGINTDiperbarui: 6 Jan 2026Syntax
SQL
DATE_DIFF(part, start_date, end_date) | DATEDIFF(part, start_date, end_date)Parameter
partVARCHARwajib
Unit hasil: 'year', 'month', 'day', 'hour', 'minute', 'second'
start_dateDATE/TIMESTAMPwajib
Tanggal awal
end_dateDATE/TIMESTAMPwajib
Tanggal akhir
Contoh Penggunaan
Selisih dalam Hari
SQL
1 SELECT DATE_DIFF('day', DATE '2024-01-01', DATE '2024-03-15');
Menghitung jumlah hari antara dua tanggal.
Hasil
74
Umur Customer dalam Hari
SQL
1 SELECT 2 customer_id, 3 registration_date, 4 DATE_DIFF('day', registration_date, CURRENT_DATE) as days_as_customer 5 FROM customers;
Menghitung berapa hari sejak registrasi.
Hasil
| customer_id | registration_date | days_as_customer |
|---|---|---|
| 1 | 2024-01-15 | 60 |
| 2 | 2023-06-01 | 288 |
Selisih dalam Bulan
SQL
1 SELECT 2 employee_id, 3 hire_date, 4 DATE_DIFF('month', hire_date, CURRENT_DATE) as months_employed, 5 DATE_DIFF('year', hire_date, CURRENT_DATE) as years_employed 6 FROM employees;
Menghitung masa kerja karyawan.
Waktu Penyelesaian Order
SQL
1 SELECT 2 order_id, 3 order_date, 4 delivery_date, 5 DATE_DIFF('day', order_date, delivery_date) as delivery_days 6 FROM orders 7 WHERE delivery_date IS NOT NULL;
Menghitung waktu pengiriman dalam hari.