Big Query 中 json 数组字段的长度

ang*_*her 6 google-bigquery

给定:表示作为查询结果选择的数组字段的 json 字符串。

如何找出 Big Query 中 JSON 数组字段的长度?

小智 8

如果它对像我这样今天寻找答案的人可能有用:我JSON_LENGTH(json_string, json_path)用 BigQuery 替换了 MySQL 中的方法ARRAY_LENGTH(JSON_EXTRACT_ARRAY(json_string, json_path)


Ell*_*ard 5

看看这是否符合您的要求。它使用 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]');
Run Code Online (Sandbox Code Playgroud)