Date & Time

TIMESTAMP_TRUNC

BigQueryBigQuery

Memotong TIMESTAMP ke granularitas yang ditentukan. Mendukung timezone untuk hasil yang akurat.

Tipe hasil: TIMESTAMPDiperbarui: 16 Mei 2026

Syntax

SQL
TIMESTAMP_TRUNC(timestamp_expression, timestamp_part [, time_zone])

Parameter

timestamp_expressionTIMESTAMPwajib

TIMESTAMP yang akan dipotong

timestamp_partTIMESTAMP_PARTwajib

Granularitas: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND, etc.

time_zoneSTRINGopsional

Timezone untuk kalkulasi (default UTC)

Contoh Penggunaan

Basic Truncation

SQL
1SELECT
2 ts,
3 TIMESTAMP_TRUNC(ts, DAY) as day_utc,
4 TIMESTAMP_TRUNC(ts, DAY, 'Asia/Jakarta') as day_jakarta
5FROM UNNEST([TIMESTAMP '2024-01-15 20:00:00 UTC']) as ts;

Truncation dengan timezone berbeda.

Hasil
tsday_utcday_jakarta
2024-01-15 20:00:00 UTC2024-01-15 00:00:00 UTC2024-01-15 17:00:00 UTC

Daily Metrics

SQL
1SELECT
2 TIMESTAMP_TRUNC(event_time, DAY, 'Asia/Jakarta') as day,
3 COUNT(DISTINCT user_id) as daily_active_users
4FROM `project.dataset.events`
5GROUP BY day
6ORDER BY day;

DAU dengan timezone Indonesia.

Pertanyaan Umum tentang TIMESTAMP_TRUNC

Apa itu fungsi TIMESTAMP_TRUNC di BigQuery?
Memotong TIMESTAMP ke granularitas yang ditentukan. Mendukung timezone untuk hasil yang akurat. Di BigQuery, fungsi TIMESTAMP_TRUNC termasuk dalam kelompok fungsi yang sering digunakan untuk mengolah dan menganalisis data secara efisien.
Bagaimana cara menggunakan TIMESTAMP_TRUNC di BigQuery?
Gunakan sintaks berikut: TIMESTAMP_TRUNC(timestamp_expression, timestamp_part [, time_zone]). Pastikan argumen yang dimasukkan sudah sesuai dengan tipe data yang diharapkan.
Apa nilai yang dikembalikan oleh fungsi TIMESTAMP_TRUNC?
Fungsi TIMESTAMP_TRUNC mengembalikan nilai bertipe TIMESTAMP. Pastikan tipe data hasil sudah sesuai dengan kebutuhan query atau formula kamu. Jika input mengandung nilai NULL, perilaku fungsi dapat berbeda — selalu periksa dokumentasi untuk memastikan hasilnya sesuai ekspektasi.
Apa saja parameter fungsi TIMESTAMP_TRUNC?
Fungsi ini memiliki 2 parameter wajib dan 1 parameter opsional. Parameter yang digunakan: timestamp_expression (TIMESTAMP, wajib): TIMESTAMP yang akan dipotong; timestamp_part (TIMESTAMP_PART, wajib): Granularitas: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND, etc.; time_zone (STRING, opsional): Timezone untuk kalkulasi (default UTC).