• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 创建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)

      通过将字符串用双引号引起来并转义内部引号和其他字符来将utf8mb4字符串引为JSON值,然后将结果作为字符串返回。NULL如果参数为,则返回NULL

      此函数通常用于生成有效的JSON字符串文字,以包含在JSON文档中。

      根据表“ JSON_UNQUOTE()特殊字符转义序列”中所示的转义序列,使用反斜杠对某些特殊字符进行转义。

      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]"             	|
      +-------------------------	+
      

    您还可以通过JSON使用将其他类型的值强制转换为该类型来获取JSON值。有关更多信息,请参见在JSON和非JSON值之间转换。CAST(value AS JSON)

    提供了两个生成JSON值的聚合函数。JSON_ARRAYAGG()以单个JSON数组的形式JSON_OBJECTAGG()返回结果集,并以单个JSON对象的形式返回结果集。有关更多信息,请参见“聚合(GROUP BY)函数”。