Я достаточно компетентен в BigQuery, но это меня озадачило.Я извлекаю пользователей, транзакции и доходы из таблиц сеансов и из таблиц реального времени.Результаты, которые я получаю за предыдущие дни, точны по сравнению с тем, что у меня есть в GA, но доход и транзакции за текущий день сильно завышены (пользователи точны).
Это похоже на проблему вложенности, но почемувлияет на текущий день, а не на предыдущие дни?
Спасибо за любой совет, который вы можете дать.
WITH
ga_tables AS (
SELECT
CAST(CONCAT(SUBSTR(date,1,4),'-',SUBSTR(date,5,2),'-',SUBSTR(date,7,2)) AS DATE) AS Date,
(
SELECT
MAX(IF(index = 27,
value,
''))
FROM
UNNEST(customDimensions)) AS PracticeName,
COUNT(DISTINCT fullVisitorId) AS users,
SUM(totals.transactions) AS transactions,
SUM(totals.totalTransactionRevenue)/1000000 AS revenue
FROM
`big-query-project-34643.162968675.ga_sessions_*` ga
WHERE
_TABLE_SUFFIX BETWEEN FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 100 DAY))
AND FORMAT_DATE('%Y%m%d', DATE_SUB(CURRENT_DATE(), INTERVAL 0 DAY))
GROUP BY
date,
PracticeName
UNION ALL
SELECT
CAST(CONCAT(SUBSTR(date,1,4),'-',SUBSTR(date,5,2),'-',SUBSTR(date,7,2)) AS DATE) AS Date,
(
SELECT
MAX(IF(index = 27,
value,
''))
FROM
UNNEST(customDimensions)) AS PracticeName,
COUNT(DISTINCT fullVisitorId) AS users,
SUM(totals.transactions) AS transactions,
SUM(totals.totalTransactionRevenue)/1000000 AS revenue
FROM
`big-query-project-34643.162968675.ga_exportKey_view_2`
GROUP BY
date,
PracticeName)
SELECT
Date AS Date,
SUM(users) AS users,
SUM(transactions) AS transactions,
SUM(revenue) AS revenue
FROM
ga_tables
WHERE
LOWER(PracticeName) NOT LIKE '%demo%'
AND LOWER(PracticeName) NOT LIKE 'vip'
GROUP BY
Date
ORDER BY
date DESC```