Google analytics BQ don'中联接查询的结果;谷歌分析中的数据不匹配

Google analytics BQ don'中联接查询的结果;谷歌分析中的数据不匹配,google-analytics,google-bigquery,Google Analytics,Google Bigquery,背景 在BigQuery中,我试图找到同时访问两个页面之一并购买特定产品的访问者数量 当我运行每个子查询时,这些数字与我在Google Analytics中看到的完全匹配 然而,当我加入他们时,这个数字与我在GA中看到的不同。我让人把两个子查询的结果带到Excel中,并做等效的操作,它们的结果与我在BQ中看到的结果相同 详细信息 问题是: SELECT ProductSessions.date AS date, SUM(ProductTransactions.totalTransacti

背景

在BigQuery中,我试图找到同时访问两个页面之一并购买特定产品的访问者数量

当我运行每个子查询时,这些数字与我在Google Analytics中看到的完全匹配

然而,当我加入他们时,这个数字与我在GA中看到的不同。我让人把两个子查询的结果带到Excel中,并做等效的操作,它们的结果与我在BQ中看到的结果相同

详细信息

问题是:

SELECT
  ProductSessions.date AS date,
  SUM(ProductTransactions.totalTransactions) transactions,
  COUNT(ProductSessions.visitId) visited_product_sessions
FROM (
  SELECT
    visitId, date
  FROM 
    `103554833.ga_sessions_20170219`
  WHERE
    EXISTS(
      SELECT 1 FROM UNNEST(hits) h
      WHERE REGEXP_CONTAINS(h.page.pagePath, r"^www.domain.com/(product|product2).html.*"))
  GROUP BY visitID, date) 
  AS ProductSessions
LEFT JOIN (
  SELECT
    totals.transactions as totalTransactions,
    visitId,
    date
  FROM
    `103554833.ga_sessions_20170219`
  WHERE
    totals.transactions IS NOT NULL
    AND EXISTS(
      SELECT 1
      FROM 
        UNNEST(hits) h,
        UNNEST(h.product) prod
      WHERE REGEXP_CONTAINS(prod.v2ProductName, r"^Product®$"))
  GROUP BY
    visitId, totals.transactions,
    date) AS ProductTransactions
ON
  ProductTransactions.visitId = ProductSessions.visitId
WHERE ProductTransactions.visitId is not null
GROUP BY
  date
ORDER BY
  date ASC
我希望ProductTransactions.totalTransactions在使用以下两个高级部分进行过滤时,能够复制Google Analytics中的事务数:

  • 课程包括页面匹配正则表达式:www.domain.com/(product | product2).html*
  • 课程包括产品匹配:Product®
然而,BG的结果比GA高出约20%


为什么会有差异?

由于您使用的是BQ,您可能会寻求360支持。您确定日期实际上是相同的吗?BQ和谷歌分析可能会显示不同时区的数据。