12.17.1 JSON 函数参考

table12.21 JSON 函数

NameDescription
->评估路径后从 JSON 列返回值;等效于 JSON_EXTRACT()。
->>(引入 5.7.13)评估路径并取消引用结果后,从 JSON 列返回值;等效于 JSON_UNQUOTE(JSON_EXTRACT())。
JSON_APPEND() (deprecated)将数据附加到 JSON 文档
JSON_ARRAY()创建 JSON 数组
JSON_ARRAY_APPEND()将数据附加到 JSON 文档
JSON_ARRAY_INSERT()插入 JSON 数组
JSON_CONTAINS()JSON 文档是否在路径中包含特定对象
JSON_CONTAINS_PATH()JSON 文档是否在路径中包含任何数据
JSON_DEPTH()JSON 文档的最大深度
JSON_EXTRACT()从 JSON 文档返回数据
JSON_INSERT()将数据插入 JSON 文档
JSON_KEYS()JSON 文档中的键数组
JSON_LENGTH()JSON 文档中的元素数
JSON_MERGE()(不建议使用 5.7.22)合并 JSON 文档,保留重复的键。 JSON_MERGE_PRESERVE()的已弃用同义词
JSON_MERGE_PATCH()(引入 5.7.22)合并 JSON 文档,替换重复键的值
JSON_MERGE_PRESERVE()(引入 5.7.22)合并 JSON 文档,保留重复的键
JSON_OBJECT()创建 JSON 对象
JSON_PRETTY()(引入 5.7.22)以易于阅读的格式打印 JSON 文档
JSON_QUOTE()引用 JSON 文档
JSON_REMOVE()从 JSON 文档中删除数据
JSON_REPLACE()替换 JSON 文档中的值
JSON_SEARCH()JSON 文档中值的路径
JSON_SET()将数据插入 JSON 文档
JSON_STORAGE_SIZE()(引入 5.7.22)用于存储 JSON 文档的二进制 table 示形式的空间
JSON_TYPE()JSON 值类型
JSON_UNQUOTE()取消引用 JSON 值
JSON_VALID()JSON 值是否有效

MySQL 5.7.22 和更高版本支持两个聚合 JSON 函数JSON_ARRAYAGG()JSON_OBJECTAGG()。有关这些说明,请参见第 12.20 节“聚合函数”

同样从 MySQL 5.7.22 开始:

  • 可以使用JSON_PRETTY()函数以易于阅读的格式“漂亮地打印” JSON 值。

  • 您可以使用JSON_STORAGE_SIZE()查看给定 JSON 值占用了多少存储空间。

有关这两个功能的完整说明,请参见第 12.17.6 节“ JSONUtil 函数”