Documentation Home
MySQL 5.7 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 35.1Mb
PDF (A4) - 35.2Mb
Man Pages (TGZ) - 256.4Kb
Man Pages (Zip) - 361.2Kb
Info (Gzip) - 3.4Mb
Info (Zip) - 3.4Mb
Excerpts from this Manual

MySQL 5.7 Reference Manual  / ...  / Functions and Operators  / JSON Functions  /  JSON Function Reference

12.17.1 JSON Function Reference

Table 12.22 JSON Functions

NameDescriptionIntroducedDeprecated
-> Return value from JSON column after evaluating path; equivalent to JSON_EXTRACT().
->> Return value from JSON column after evaluating path and unquoting the result; equivalent to JSON_UNQUOTE(JSON_EXTRACT()).5.7.13
JSON_APPEND() Append data to JSON documentYes
JSON_ARRAY() Create JSON array
JSON_ARRAY_APPEND() Append data to JSON document
JSON_ARRAY_INSERT() Insert into JSON array
JSON_CONTAINS() Whether JSON document contains specific object at path
JSON_CONTAINS_PATH() Whether JSON document contains any data at path
JSON_DEPTH() Maximum depth of JSON document
JSON_EXTRACT() Return data from JSON document
JSON_INSERT() Insert data into JSON document
JSON_KEYS() Array of keys from JSON document
JSON_LENGTH() Number of elements in JSON document
JSON_MERGE() Merge JSON documents, preserving duplicate keys. Deprecated synonym for JSON_MERGE_PRESERVE()5.7.22
JSON_MERGE_PATCH() Merge JSON documents, replacing values of duplicate keys5.7.22
JSON_MERGE_PRESERVE() Merge JSON documents, preserving duplicate keys5.7.22
JSON_OBJECT() Create JSON object
JSON_PRETTY() Print a JSON document in human-readable format5.7.22
JSON_QUOTE() Quote JSON document
JSON_REMOVE() Remove data from JSON document
JSON_REPLACE() Replace values in JSON document
JSON_SEARCH() Path to value within JSON document
JSON_SET() Insert data into JSON document
JSON_STORAGE_SIZE() Space used for storage of binary representation of a JSON document5.7.22
JSON_TYPE() Type of JSON value
JSON_UNQUOTE() Unquote JSON value
JSON_VALID() Whether JSON value is valid

MySQL 5.7.22 and later supports two aggregate JSON functionsJSON_ARRAYAGG() andJSON_OBJECTAGG(). SeeSection 12.19, “Aggregate Functions”, for descriptions of these.

Also beginning with MySQL 5.7.22:

  • pretty-printing of JSON values in an easy-to-read format can be obtained using theJSON_PRETTY() function.

  • You can see how much storage space a given JSON value takes up usingJSON_STORAGE_SIZE().

For complete descriptions of these two functions, seeSection 12.17.6, “JSON Utility Functions”.