Amazon Redshift 自 2025 年 11 月 1 日起不再支援建立新的 Python UDF。如果您想要使用 Python UDF,請在該日期之前建立 UDF。現有 Python UDF 將繼續正常運作。如需詳細資訊,請參閱部落格文章
IS_VALID_JSON_ARRAY 函數
注意
JSON_PARSE 及其相關聯的函式會將 JSON 值剖析為 SUPER,Amazon Redshift 會剖析這類值的效率比剖析 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 | +------------------------------+---------------------+