Date & Time
Snowflake
DATEDIFF
Menghitung selisih antara dua tanggal atau timestamp dalam unit waktu tertentu.
Tipe hasil:
INTEGERDiperbarui: 6 Jan 2026Syntax
SQL
DATEDIFF(date_or_time_part, date_or_time_expr1, date_or_time_expr2)Parameter
date_or_time_partVARCHARwajib
Unit waktu untuk hasil: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND
date_or_time_expr1DATE/TIMESTAMPwajib
Tanggal awal (akan dikurangi dari tanggal akhir)
date_or_time_expr2DATE/TIMESTAMPwajib
Tanggal akhir
Contoh Penggunaan
Menghitung Selisih Hari
SQL
1 SELECT DATEDIFF('DAY', '2024-01-01', '2024-03-15') as days_diff;
Menghitung jumlah hari antara dua tanggal.
Hasil
74
Menghitung Umur Akun
SQL
1 SELECT 2 user_id, 3 created_at, 4 DATEDIFF('DAY', created_at, CURRENT_TIMESTAMP()) as account_age_days, 5 DATEDIFF('MONTH', created_at, CURRENT_TIMESTAMP()) as account_age_months 6 FROM users;
Menghitung umur akun user dalam hari dan bulan.
Hasil
| USER_ID | CREATED_AT | ACCOUNT_AGE_DAYS | ACCOUNT_AGE_MONTHS |
|---|---|---|---|
| U001 | 2023-01-15 | 450 | 15 |
| U002 | 2023-06-20 | 295 | 10 |
Analisis Waktu Proses
SQL
1 SELECT 2 order_id, 3 order_date, 4 ship_date, 5 DATEDIFF('DAY', order_date, ship_date) as processing_days 6 FROM orders 7 WHERE ship_date IS NOT NULL;
Menghitung waktu proses dari order sampai pengiriman.
Hasil
| ORDER_ID | ORDER_DATE | SHIP_DATE | PROCESSING_DAYS |
|---|---|---|---|
| ORD-001 | 2024-03-01 | 2024-03-03 | 2 |
| ORD-002 | 2024-03-05 | 2024-03-08 | 3 |