我对使用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