ページのタイトルやURL別にpvを集計するクエリ
説明は後半にして先にクエリを書いておく。_table_suffixでは実行日前日のデータを集計対象にしている。
#前日のページタイトル別のpv数
SELECT
(select value.string_value from unnest(event_params) p where p.key = 'page_title') as page_title
,count(1)
FROM `xxxxxxxxxx.xxxxxxxxxx.events_*` #プロジェクトIDとデータセット名
where event_name='page_view'
and _table_suffix = format_date('%Y%m%d',date_add(current_date("Asia/Tokyo"),interval -1 day))
group by 1
#前日のページURL別のpv数
SELECT
(select value.string_value from unnest(event_params) p where p.key = 'page_location') as page_url
,count(1)
FROM `xxxxxxxxxx.xxxxxxxxxx.events_*` #プロジェクトIDとデータセット名
where event_name='page_view'
and _table_suffix = format_date('%Y%m%d',date_add(current_date("Asia/Tokyo"),interval -1 day))
group by 1
ページのタイトルやURL別にpvを集計するクエリの説明
pvを集計する時に気を付ける事
- イベント名を絞り込む
- keyはpage_titleとpage_location
イベント名を絞り込む。
GA4+BigQueryの場合イベント単位でレコードが出来る。session_startやfirst_visitのように他のイベントも記録されているのでwhereの中で「event_name='page_view'」に絞り込む。
keyはpage_titleとpage_location
page_titleとpage_locationにそれぞれの値が入っている。
page_titleはイベントが発生した時点の値。途中で変えたりページを読み込んでから翻訳されたりすると変わってしまう(らしい)。
page_locationでは余計なパラメータがついたりする。あとpage_urlではない。
どちらにしてもちゃんと取るなら整理が必要なので悩ましい。