GA4

【GA4 SQL】「event_timestamp」を日本時刻へ変換

GA4からBigQueryへエクスポートされたevent_timestampはUTC(協定世界時)の時刻で格納されているため、必要であれば日本時刻へ変換する。UTC時刻と日本のJSTとは9時間のズレがあり、UTCから9時間加えた時刻がJSTとなる。

結論「event_timestamp」を日本時間(日付)に変換するクエリ

DATE(TIMESTAMP_MICROS(event_timestamp), 'Asia/Tokyo') AS 日付を表す別名

「YYYY-MM-DD」の日付を表すDATE型を取得するには上記のクエリで実行する。「YYYY-MM-DD」の形式であっても、それが文字列なのか日付なのかで全く違うものとなる。

event_timestampを日本時間の日付に変換するサンプルクエリ

CREATE TEMP FUNCTION date_from() RETURNS STRING AS ('20240401');

SELECT
  DATE(TIMESTAMP_MICROS(event_timestamp), 'Asia/Tokyo') AS event_timestamp_ymd,
  PARSE_DATE("%Y%m%d", event_date) AS event_date_ymd,
  COUNT(*) AS _pv
FROM
  `<project>.<dataset>.events_*`
WHERE
  _TABLE_SUFFIX BETWEEN date_from() AND FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(),INTERVAL 1 DAY))
AND
  event_name = 'page_view'  
GROUP BY
  event_timestamp_ymd,
  event_date_ymd
ORDER BY
  event_timestamp_ymd ASC

クエリ解説

DATE(TIMESTAMP_MICROS(event_timestamp), 'Asia/Tokyo') AS event_timestamp_ymd
PARSE_DATE("%Y%m%d", event_date) AS event_date_ymd

両者は同じ結果となる。そのため、日にちまで扱えればよいのであれば’event_date’フィールドを使用しても問題ない。

関連記事

【GA4SQL】ランディングページの次ページ遷移・直帰率をBigQueryから取得

【検証】GA4 entrancesパラメータ

【GA4SQL】最新のページタイトル(page_title)を取得

PAGE TOP