JSON_DEPTH

Syntax

JSON_DEPTH(json_doc)

Description

Returns the maximum depth of the given JSON document, or NULL if the argument is null. An error occurs if the argument is an invalid JSON document.

  • Scalar values or empty arrays or objects have a depth of 1.

  • Arrays or objects that are not empty but contain only elements or member values of depth 1 will have a depth of 2.

  • In other cases, the depth will be greater than 2.

Examples

SELECT JSON_DEPTH('[]'), JSON_DEPTH('true'), JSON_DEPTH('{}'); +------------------+--------------------+------------------+ | JSON_DEPTH('[]') | JSON_DEPTH('true') | JSON_DEPTH('{}') | +------------------+--------------------+------------------+ | 1 | 1 | 1 | +------------------+--------------------+------------------+  SELECT JSON_DEPTH('[1, 2, 3]'), JSON_DEPTH('[[], {}, []]'); +-------------------------+----------------------------+ | JSON_DEPTH('[1, 2, 3]') | JSON_DEPTH('[[], {}, []]') | +-------------------------+----------------------------+ | 2 | 2 | +-------------------------+----------------------------+  SELECT JSON_DEPTH('[1, 2, [3, 4, 5, 6], 7]'); +---------------------------------------+ | JSON_DEPTH('[1, 2, [3, 4, 5, 6], 7]') | +---------------------------------------+ | 3 | +---------------------------------------+

This page is licensed: CC BY-SA / Gnu FDL

Last updated

Was this helpful?