JSON_DEPTH
功能描述
返回JSON文档最大深度。
语法格式
JSON_DEPTH( json_doc )
参数说明
json_doc:JSON目标文档,JSON类型或JSON String类型。
说明:
空数组、空对象或标量值的深度为1。包含深度为1元素的非空数组,或仅包含深度为1成员的分控对象,深度为2。否则,json文档深度大于2。
函数返回类型
INTEGER数值类型
示例
sql
-- 空数组、空对象或标量值
SQL> SELECT TO_CHAR(JSON_DEPTH('{}')), TO_CHAR(JSON_DEPTH('[]')), TO_CHAR(JSON_DEPTH('1'));
EXPR1 | EXPR2 | EXPR3 |
------------------------------------------------------------------------------
1| 1| 1|
-- 包含深度为 1 的元素的数组,所有成员的值的深度为 1 的对象
SQL> SELECT TO_CHAR(JSON_DEPTH('[1, 2]')), TO_CHAR(JSON_DEPTH('{"x": 1}'));
EXPR1 | EXPR2 |
------------------------------------------------------------------------------
2| 2|
-- 包含深度超过 1 的元素的数组,所有成员的值的深度超过 1 的对象
SELECT TO_CHAR(JSON_DEPTH('[1, [2, 3]]')), TO_CHAR(JSON_DEPTH('{"x": {"y": 1}}')),
TO_CHAR(JSON_DEPTH('{"x": {"y": {"z": 1}}}'));
EXPR1 | EXPR2 | EXPR3 |
------------------------------------------------------------------------------
3| 3| 4|