IS_VALID_JSON_ARRAY 函数
注意
JSON_PARSE 及其关联函数将 JSON 值解析为 SUPER,Amazon Redshift 解析 SUPER 的效率比 VARCHAR 更高。
我们建议您使用 JSON_PARSE 函数解析 JSON 字符串来获取 SUPER 值,而不是使用 IS_VALID_JSON_ARRAY。然后,使用 IS_ARRAY 函数来确认数组的格式是否正确。
IS_VALID_JSON_ARRAY 函数用于验证 JSON 数组。如果数组是格式正确的 JSON 数组,则该函数返回布尔值 true
;如果数组格式不正确,函数将返回 false
。要验证 JSON 字符串,请使用 IS_VALID_JSON 函数
有关更多信息,请参阅 JSON 函数。
语法
IS_VALID_JSON_ARRAY('json_array')
参数
- json_array
-
计算结果为 JSON 数组的字符串或表达式。
返回类型
BOOLEAN
示例
要创建一个表并插入 JSON 字符串进行测试,请使用以下示例。
CREATE TABLE test_json_arrays(id int IDENTITY(0,1), json_arrays VARCHAR); -- Insert valid JSON array strings -- INSERT INTO test_json_arrays(json_arrays) VALUES('[]'), ('["a","b"]'), ('["a",["b",1,["c",2,3,null]]]'); -- Insert invalid JSON array strings -- INSERT INTO test_json_arrays(json_arrays) VALUES('{"a":1}'), ('a'), ('[1,2,]');
要验证前面示例中的字符串,请使用下面的示例。
SELECT json_arrays, IS_VALID_JSON_ARRAY(json_arrays) FROM test_json_arrays ORDER BY id;
+------------------------------+---------------------+ | json_arrays | is_valid_json_array | +------------------------------+---------------------+ | [] | true | | ["a","b"] | true | | ["a",["b",1,["c",2,3,null]]] | true | | {"a":1} | false | | a | false | | [1,2,] | false | +------------------------------+---------------------+