Количество сессий в #standardsql Bigquery

Я ищу, чтобы преобразовать этот запрос Bigquery #legacySQL в #standardsql.

#legacySQL
SELECT SUM(totals.visits) AS Sessions, 
COUNT(DISTINCT(fullVisitorID), 2000000) as Distinct_Users #this doesn't include null values and I've increased the sample size to 2000000 (Learn more)
FROM TABLE_DATE_RANGE([0123456789.ga_sessions_],TIMESTAMP('2017-01-01'),TIMESTAMP('2017-03-13'))

Пока что я правильно определил количество пользователей, но изо всех сил пытался получить правильное количество сессий:

#standardsql
SELECT 
count(distinct fullvisitorid)
,SUM(totals.visits) AS Sessions
FROM `ga-export-1111.0123456789.ga_sessions_2017*`
,UNNEST (hits) AS hits

Сейчас 14 марта, поэтому состояние даты в порядке.

Я предполагаю, что это из-за повторяющихся полей показывает завышенное количество сеансов. Может кто-нибудь помочь с вопросом синтаксиса, пожалуйста?

1 ответ

Решение

Unnest был ненужным. Это будет работать как намерение:

#standardsql
SELECT 
count(distinct fullvisitorid)

,SUM(totals.visits) AS Sessions
FROM `ga-export-1111.0123456789.ga_sessions_2017*`
Другие вопросы по тегам