2017-10-17 15 views
0

指定:クエリの結果として選択された配列フィールドを表すjson文字列。Big Queryのjson配列フィールドの長さ

Big QueryでJSON配列フィールドの長さを調べるにはどうすればよいですか?

+1

'...クエリの結果として選択された配列フィールドのためである...'かなり広く開い説明です!詳細/例を提供できますか? –

答えて

1

これが望ましいかどうかを確認してください。 JavaScript UDFを使用してJSONを解析し、配列の長さを返します。例以下は

#standardSQL 
CREATE TEMP FUNCTION JsonArrayLength(json_array STRING) 
RETURNS INT64 LANGUAGE js AS """ 
var arr = JSON.parse(json_array); 
return arr.length; 
"""; 

SELECT JsonArrayLength('[1,3,5,7]'); 
0

BigQueryの標準SQL

#standardSQL 
SELECT ARRAY_LENGTH(SPLIT('[1,3,5,7]'))  
+0

しかし配列に他のJSONオブジェクトが配列に含まれているとうまくいかない場合があります:)問題は非常に広いので、SPLITだけでも十分でしょう。それは伝えるのが難しいです。 –

+0

が同意します。答えは通常、質問と同じくらい良い:o)しかし、私たちの答えはまだOPのためのいくつかの価値を持っていることを願っています –