Memotong (truncate) timestamp ke presisi tertentu. Sangat berguna untuk grouping data berdasarkan periode waktu.
DATE/TIMESTAMP (sama dengan input)Diperbarui: 12 Jul 2026DATE_TRUNC(date_or_time_part, date_or_time_expr)Presisi truncate: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND
Nilai tanggal atau timestamp yang akan di-truncate
1 SELECT DATE_TRUNC('MONTH', '2024-03-15 14:30:00'::TIMESTAMP) as result;
Memotong timestamp ke awal bulan.
1 SELECT 2 DATE_TRUNC('MONTH', order_date) as month, 3 SUM(amount) as total_sales, 4 COUNT(*) as order_count 5 FROM orders 6 GROUP BY DATE_TRUNC('MONTH', order_date) 7 ORDER BY month;
Menghitung total penjualan dan jumlah order per bulan.
| MONTH | TOTAL_SALES | ORDER_COUNT |
|---|---|---|
| 2024-01-01 00:00:00.000 | 1250000 | 450 |
| 2024-02-01 00:00:00.000 | 1480000 | 520 |
| 2024-03-01 00:00:00.000 | 1320000 | 480 |
1 SELECT 2 DATE_TRUNC('HOUR', event_timestamp) as hour, 3 COUNT(*) as event_count 4 FROM events 5 WHERE event_timestamp >= DATEADD('DAY', -1, CURRENT_TIMESTAMP()) 6 GROUP BY 1 7 ORDER BY 1;
Menghitung jumlah event per jam dalam 24 jam terakhir.
Sudah paham DATE_TRUNC? Latih langsung di browser
Latihan interaktif, langsung di browser.