【发布时间】:2019-08-15 12:25:05
【问题描述】:
我想知道是否有人可以帮助我。
我正在尝试在标准 SQL 中组合一个 BigQuery 脚本,该脚本查找给定字段值,然后替换特定值。
这是我整理的脚本:
SELECT
REGEXP_REPLACE(hits.eventInfo.eventLabel, r'.*\,','Apples') as eventLabel
FROM `bigquery.Test.ga_sessions_20181221`,
#hits are categorised as Arrays (REPEATED mode) in Standard SQL.UNNEST takes an ARRAY and returns a table with a single row for each element in the ARRAY.
UNNEST(hits) hits
WHERE REGEXP_CONTAINS(page.pagePath, r'^/dashboard/.*\properties|^/dashboard/inbox') and REGEXP_CONTAINS(EventInfo.eventLabel, r'.*\,')
我遇到的问题是我能够创建一个名为“eventLabel”的新列,但我无法找到覆盖现有“hits.eventInfo.eventLabel”列的方法。
也许有人可以看看这个,并提供一些关于我哪里出错的指导。
非常感谢和亲切的问候
克里斯
【问题讨论】:
-
您希望如何更改 eventLabel 的值?请解释替换规则
-
你试过代替
as eventLabelselectas hits.eventInfo.eventLabel -
您是否要重新创建原始表,但
hits.eventInfo.eventLabel中的某些匹配值不同? -
大家好,我很抱歉没有说得更清楚。我想修改现有列中的数据,即在适合“hits.eventInfo.eventLabel”列中的值的地方说苹果。我曾尝试使用 hits.eventInfo.eventLabel,但收到语法错误。非常感谢克里斯
标签: sql google-bigquery