Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


JSON_DEPTH

📄字数 426
👁️阅读量 加载中...

功能描述

返回JSON文本最大深度。

语法格式

sql
JSON_DEPTH( json_doc )

输入参数

  • json_doc:JSON文本,JSON类型或字符类型。

输出结果

INTEGER类型。任意参数为NULL时,输出结果为NULL

提示

  • 空数组、空对象或标量值的深度为1。
  • 包含深度为1元素的非空数组,或仅包含深度为1成员的非空对象,深度为2。
  • 除上述情况外,其他json_doc深度大于2。

示例

sql
-- 空数组、空对象或标量值
SQL> SELECT JSON_DEPTH('{}'), JSON_DEPTH('[]'), JSON_DEPTH('1');

+-------+-------+-------+
| EXPR1 | EXPR2 | EXPR3 |
+-------+-------+-------+
| 1     | 1     | 1     |
+-------+-------+-------+

-- 包含深度为1元素的非空数组,或仅包含深度为1成员的非空对象。
SQL> SELECT JSON_DEPTH('[1, 2]'), JSON_DEPTH('{"x": 1}');

+-------+-------+
| EXPR1 | EXPR2 |
+-------+-------+
| 2     | 2     |
+-------+-------+

-- 包含深度超过1的元素的数组,所有成员的值的深度超过1的对象。
SQL> SELECT JSON_DEPTH('[1, [2, 3]]'),  JSON_DEPTH('{"x": {"y": 1}}'), JSON_DEPTH('{"x": {"y": {"z": 1}}}');

+-------+-------+-------+
| EXPR1 | EXPR2 | EXPR3 |
+-------+-------+-------+
| 3     | 3     | 4     |
+-------+-------+-------+