Я очень новичок в использовании Google BigQuery.В настоящее время у меня есть запрос, который выводит «Среднее время на сайте на MAU» (см. Ниже).Мне нужно изменить этот запрос, чтобы получить «Среднее время на сайте в расчете на DAU».У меня возникли проблемы с синтаксисом BQ для этого.
* Обратите внимание, что я заменил мои настоящие имена таблиц на table1 и так далее.
WITH
base AS (
SELECT
*
FROM (
SELECT
_TABLE_SUFFIX AS table_date,
"web" AS app_source,
*
FROM
`table1`
UNION ALL
SELECT
_TABLE_SUFFIX AS table_date,
"iOS" AS app_source,
*
FROM
`table2`
UNION ALL
SELECT
_TABLE_SUFFIX AS table_date,
"Android" AS app_source,
*
FROM
`table3` )
WHERE
NOT REGEXP_CONTAINS(table_date, "intraday|backup") )
SELECT
FORMAT_DATE("%E4Y-%m", PARSE_DATE("%E4Y%m%d", table_date)) as yearMonth,
FORMAT_DATE("%E4Y-%m-01", PARSE_DATE("%E4Y%m%d", MIN(table_date))) AS
ymd,
AVG(COALESCE(totals.timeOnSite, totals.timeOnScreen, 0)) as timeOnSite
FROM
base
WHERE
table_date > "20180101"
GROUP BY 1
ORDER BY 1