来自google analytics export我试图从trafficSource.campaign字段中提取下一个查询的最后一个数字:
SELECT
REGEXP_EXTRACT(trafficSource.campaign,r':(\d+$)') as campaign,
FROM
[95677969.ga_sessions_20160109] AS results,
WHERE
hits.type IN ('TRANSACTION','PAGE')
此查询在UI中运行良好,每行返回的数字与reg expresion匹配,但是当我在我的脚本中复制粘贴此查询时,将返回null值。
trafficSource.campaign值是这样的:
_dfa_107202:4637224:8531522
请有人帮帮我吗?
答案 0 :(得分:3)
逃避是这里的问题。
当你给BigQuery这样的东西时:
SELECT COUNT(*) FROM [publicdata:samples.shakespeare] WHERE REGEXP_MATCH(word, r'^\w$')
这将在BigQuery UI中正常工作(结果是283)。但是如果你将相同的字符串复制到你最喜欢的编程语言中,它可能会尝试将\
作为其转义字符之一进行读取,因此你必须双重逃避它 - 或者想出另一种方法来提供它字符串解释器不会改变字符串。