暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL的函数和运算符 - JSON 函数 - 创建JSON值的函数

数据库杂货铺 2021-09-01
1174
创建JSON值的函数
 
本部分中列出的函数由组成元素组成的JSON值。
 
JSON_ARRAY([val[, val] ...])
 
计算值列表(可能为空),并返回包含这些值的JSON数组。
 
    mysql> SELECT JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME());
    +---------------------------------------------+
    | JSON_ARRAY(1, "abc", NULL, TRUE, CURTIME()) |
    +---------------------------------------------+
    | [1, "abc", null, true, "11:30:24.000000"] |
    +---------------------------------------------+
     
    JSON_OBJECT([key, val[, key, val] ...])
     
    计算键值对列表(可能为空),并返回包含这些键值对的JSON对象。如果任何键名为 NULL 或参数数量为奇数,则会发生错误。
     
      mysql> SELECT JSON_OBJECT('id', 87, 'name', 'carrot');
      +-----------------------------------------+
      | JSON_OBJECT('id', 87, 'name', 'carrot') |
      +-----------------------------------------+
      | {"id": 87, "name": "carrot"} |
      +-----------------------------------------+
       
      JSON_QUOTE(string)
       
      通过使用双引号字符和转义内部引号及其他字符将字符串包装为JSON值引用,然后将结果作为 utf8mb4 字符串返回。如果参数为 NULL,则返回 NULL
       
      此函数通常用于生成有效的 JSON 字符串字面量,以包含在 JSON 文档中。
       
      某些特殊字符需要用反斜杠转义。
       
        mysql> SELECT JSON_QUOTE('null'), JSON_QUOTE('"null"');
        +--------------------+----------------------+
        | JSON_QUOTE('null') | JSON_QUOTE('"null"') |
        +--------------------+----------------------+
        | "null" | "\"null\"" |
        +--------------------+----------------------+
        mysql> SELECT JSON_QUOTE('[1, 2, 3]');
        +-------------------------+
        | JSON_QUOTE('[1, 2, 3]') |
        +-------------------------+
        | "[1, 2, 3]" |
        +-------------------------+
         
        还可以通过使用 CAST(value AS JSON) 将其他类型的值强制转换为JSON类型值。
         
        有两个生成JSON值的聚合函数可用。JSON_ARRAYAGG() 将结果集作为单个 JSON 数组返回,JSON_OBJECTAGG() 将结果集作为单个 JSON 对象返回。
         
         
        官方网址:
        https://dev.mysql.com/doc/refman/8.0/en/json-creation-functions.html
        文章转载自数据库杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论