JSON_ARRAY_LENGTH 函数
JSON_ARRAY_LENGTH 函数返回 JSON 字符串的外部数组中的元素的数量。如果 null_if_invalid 参数设置为 true 并且 JSON 字符串无效,函数将返回 NULL 而不是返回错误。
有关更多信息,请参阅JSON 函数。
语法
json_array_length('json_array' [, null_if_invalid ] )
Arguments
- json_array
-
格式正确的 JSON 数组。
- null_if_invalid
-
一个布尔值,指定在输入 JSON 字符串无效时是否返回 NULL 而不返回错误。要在 JSON 无效时返回 NULL,请指定
true(t)。要在 JSON 无效时返回错误,请指定false(f)。默认为false。
返回类型
INTEGER
示例
以下示例返回数组中的元素的数量:
select json_array_length('[11,12,13,{"f1":21,"f2":[25,26]},14]'); json_array_length ----------------- 5
在以下示例中,因为 JSON 无效,所以返回错误。
select json_array_length('[11,12,13,{"f1":21,"f2":[25,26]},14'); An error occurred when executing the SQL command: select json_array_length('[11,12,13,{"f1":21,"f2":[25,26]},14')
以下示例将 null_if_invalid 设置为 true,因此语句在 JSON 无效时返回 NULL 而不是返回错误。
select json_array_length('[11,12,13,{"f1":21,"f2":[25,26]},14',true); json_array_length -----------------