Google analytics 在BigQuery中计算嵌套字段而不丢失导出架构

Google analytics 在BigQuery中计算嵌套字段而不丢失导出架构,google-analytics,google-bigquery,enhanced-ecommerce,Google Analytics,Google Bigquery,Enhanced Ecommerce,对字段的计算会导致BigQuery中的原始导出模式丢失 我有一个标准的增强型电子商务模式,希望将transactionRevenue更改为其他货币。我想保留通用的导出模式结构。计算字段“transactionRevenueNewCurrency”应位于hits.transaction.transactionRevenueNewCurrency中 #standardSQL SELECT s.*, ARRAY(SELECT COALESCE( x.transaction.transactionRe

对字段的计算会导致BigQuery中的原始导出模式丢失

我有一个标准的增强型电子商务模式,希望将transactionRevenue更改为其他货币。我想保留通用的导出模式结构。计算字段“transactionRevenueNewCurrency”应位于hits.transaction.transactionRevenueNewCurrency中

#standardSQL
SELECT
s.*,
ARRAY(SELECT  COALESCE( x.transaction.transactionRevenue*1.17,0)
        FROM UNNEST(hits) AS x) AS transactionRevenueNewCurrency
FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*` as s , UNNEST(hits) as h
WHERE
_TABLE_SUFFIX BETWEEN '20160801' AND '20160831'
AND transaction.transactionRevenue >0
LIMIT 10000

新字段将附加到会话,而不是每次命中。

下面是用于BigQuery标准SQL的

#standardSQL
SELECT * REPLACE(
  ARRAY(
    SELECT AS STRUCT * REPLACE(
      (SELECT AS STRUCT * REPLACE(
        COALESCE(CAST(transactionRevenue * 1.17 AS INT64), 0
        ) AS transactionRevenue)
       FROM UNNEST([transaction])
      ) AS transaction)
    FROM UNNEST(hits) hit
  ) AS hits)
FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*` 
WHERE _TABLE_SUFFIX BETWEEN '20160801' AND '20160831'

下面是BigQuery标准SQL

#standardSQL
SELECT * REPLACE(
  ARRAY(
    SELECT AS STRUCT * REPLACE(
      (SELECT AS STRUCT * REPLACE(
        COALESCE(CAST(transactionRevenue * 1.17 AS INT64), 0
        ) AS transactionRevenue)
       FROM UNNEST([transaction])
      ) AS transaction)
    FROM UNNEST(hits) hit
  ) AS hits)
FROM `bigquery-public-data.google_analytics_sample.ga_sessions_*` 
WHERE _TABLE_SUFFIX BETWEEN '20160801' AND '20160831'