我有一個頁面URL列的組成部分由/
分隔。我嘗試在BigQuery中運行SPLIT()
函數,但它只提供第一個值。我想要特定列中的所有值。BigQuery:SPLIT()只返回一個值
我不明白如何使用Split string into multiple columns with bigquery中提到的Regexp_extract()
示例。
我需要類似於REGEX_SPLIT_TO_TABLE(<String>, <DELIMITER>)
這將一個字符串轉換爲多個列。
查詢:
SELECT PK,
DATE(TIMESTAMP(CONCAT(SUBSTR(date,1,4),'-',SUBSTR(date,5,2),'-',SUBSTR(date,7,2),' 00:00:00'))) as visit_date,
hits_page_pagePath,
split(hits_page_pagePath,'/')
FROM [Intent.All2mon] limit 100
數據是什麼樣的? – 2014-11-21 12:20:22
嗨Felipe,你能幫我理解如何準備正則表達式來提取'/'符號中每個實體的信息嗎? – 2014-11-21 14:10:41
您無法在BigQuery中生成可變數量的列,只有恆定數量的列,因此您無法完全按照自己的想法進行操作。如果您可以設置URL組件數量的上限,那麼您可以生成很多列,並在特定URL具有較少組件時使它們爲NULL。 – sprocket 2014-11-22 19:19:16