Truncates a TIME value to the specified granularity (MICROSECOND, MILLISECOND, SECOND, MINUTE, HOUR).
TIMEDiperbarui: 13 Jun 2026TIME_TRUNC(time_expression, time_part)The TIME value to truncate
Granularity: HOUR, MINUTE, SECOND, MILLISECOND, MICROSECOND
1 SELECT 2 time, 3 TIME_TRUNC(time, HOUR) as hour, 4 TIME_TRUNC(time, MINUTE) as minute 5 FROM UNNEST([TIME '14:35:42.123456']) as time;
Truncate a time value to various granularities.
| time | hour | minute |
|---|---|---|
| 14:35:42.123456 | 14:00:00 | 14:35:00 |
1 SELECT 2 TIME_TRUNC(TIME(event_timestamp, 'Asia/Jakarta'), HOUR) as hour, 3 COUNT(*) as events 4 FROM `project.dataset.events` 5 GROUP BY hour 6 ORDER BY hour;
Analyze event traffic grouped by hour.
1 -- Truncate to 15-minute intervals 2 SELECT 3 original_time, 4 TIME_TRUNC( 5 TIME_ADD(original_time, INTERVAL 7 MINUTE), 6 HOUR 7 ) as rounded_15min 8 FROM UNNEST([TIME '14:08:00', TIME '14:22:00', TIME '14:38:00']) as original_time;
Approximate 15-minute rounding.
Sudah paham TIME_TRUNC? Latih langsung di browser
Latihan interaktif, langsung di browser.