首页 MySQL JSON_DEPTH() 函数

MySQL JSON_DEPTH() 函数

MySQL JSON_DEPTH() 函数返回一个 JSON 文档的最大深度。

JSON_DEPTH() 语法

这里是 MySQL JSON_DEPTH() 的语法:

JSON_DEPTH(json)

参数

json
必需的。一个 JSON 文档。

返回值

JSON_DEPTH() 函数返回一个 JSON 文档的最大深度。JSON_DEPTH() 函数按如下规则计算 JSON 文档的深度:

  • 一个空的数组、空的对象或者纯值的深度是 1。
  • 一个仅包含深度为 1 的元素的数组的深度是 2。
  • 一个所有成员的值的深度为 1 的对象的深度是 2。
  • 除此之外的其他 JSON 文档的深度都大于 2.

如果参数为 NULL,此函数将返回 NULL

如果参数不是有效的 JSON 文档,MySQL 将会给出错误。您可以使用 JSON_VALID() 验证 JSON 文档的有效性。

JSON_DEPTH() 示例

这里列出了几个常见的 JSON_DEPTH() 用法示例。

示例 1

SELECT JSON_DEPTH('[]'), JSON_DEPTH('[1, 2]'), JSON_DEPTH('[1, [2, 3]]');
+------------------+----------------------+---------------------------+
| JSON_DEPTH('[]') | JSON_DEPTH('[1, 2]') | JSON_DEPTH('[1, [2, 3]]') |
+------------------+----------------------+---------------------------+
|                1 |                    2 |                         3 |
+------------------+----------------------+---------------------------+

示例 2

SELECT JSON_DEPTH('{}'), JSON_DEPTH('{"x": 1}'), JSON_DEPTH('{"x": {"y": 1}}');
+------------------+------------------------+-------------------------------+
| JSON_DEPTH('{}') | JSON_DEPTH('{"x": 1}') | JSON_DEPTH('{"x": {"y": 1}}') |
+------------------+------------------------+-------------------------------+
|                1 |                      2 |                             3 |
+------------------+------------------------+-------------------------------+
特别声明:本站部分内容收集于互联网是出于更直观传递信息的目的。该内容版权归原作者所有,并不代表本站赞同其观点和对其真实性负责。如该内容涉及任何第三方合法权利,请及时与824310991@qq.com联系,我们会及时反馈并处理完毕。