2017-09-13 159 views
2

恰巧我有一個領域的字符串化的陣列中的BigQuery如何將字符串數組轉換爲BigQuery中的數組?

'["a","b","c"]' 

,我想將它轉換爲BigQuery的理解數組。 我希望能夠做到這一點的標準SQL:

with k as (select '["a","b","c"]' as x) 
select x from k, unnest(x) x 

我試圖JSON_EXTRACT('["a","b","c"]','$')和everythig我還能在網上找到。

任何想法?

+0

你有一個率低。重要的是 - 你可以在投票的下方用貼出答案左邊的勾號來標記接受答案。看到http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work#5235爲什麼它很重要!對答案投票也很重要。表決有用的答案。 ...當某人回答你的問題時,你可以檢查該怎麼做 - http://stackoverflow.com/help/someone-answers。遵循這些簡單的規則,您可以提高自己的聲譽得分,同時讓我們有動力回答您的問題:o)請考慮! –

回答

2

下面是BigQuery的標準SQL

#standardSQL 
WITH k AS (
    SELECT 1 AS id, '["a","b","c"]' AS x UNION ALL 
    SELECT 2, '["x","y"]' 
) 
SELECT 
    id, 
    ARRAY(SELECT * FROM UNNEST(SPLIT(SUBSTR(x, 2 , LENGTH(x) - 2)))) AS x 
FROM k 

它把你的字符串列到數組列