JSON_ARRAY()

简介

将用户传入的值组成json数组返回

语法

JSON_ARRAY([val[, val] ...])

说明

1. 一个数组可以由多种类型组成。

2. 组成数组的类型包括:对象,数组,数值,布尔值,null,字符串。

注解

使用数组或者对象进行构造时,需要调用json_array()和json_object()。

若不调用这两个函数,插入的数据会被视为字符串。

示例

-- 使用数组构造数组
SELECT JSON_ARRAY(JSON_ARRAY(1,2),JSON_ARRAY(3,4));
JSON_ARRAY(json)      |
----------------------
[[1, 2], [3, 4]]      |
总数目:1

-- 不调用json_array,被视为字符串
SELECT JSON_ARRAY('[1,2]','[3,4]');
JSON_ARRAY(json)      |
----------------------
["[1,2]", "[3,4]"]    |
总数目:1


-- 使用对象构造数组
SELECT JSON_ARRAY(JSON_OBJECT('a','b'),JSON_OBJECT('c','d'));
JSON_ARRAY(json)      |
----------------------
[{"a": "b"}, {"c": "d"|
}]                    |
总数目:1

-- 不调用json_object,被视为字符串
SELECT JSON_ARRAY('{"a":"b"}','{"c":"d"}');
JSON_ARRAY(json)      |
----------------------
["{\"a\":\"b\"}", "{\"|
c\":\"d\"}"]          |
总数目:1


-- 使用数值构造数据
SELECT JSON_ARRAY(1,2,3);
JSON_ARRAY(json)      |
----------------------
[1, 2, 3]             |
总数目:1

-- 使用布尔值构造数据
SELECT JSON_ARRAY(true,false);
JSON_ARRAY(json)      |
----------------------
[true, false]         |
总数目:1

-- 使用null构造数据
SELECT JSON_ARRAY(null,null);
JSON_ARRAY(json)      |
----------------------
[null, null]          |
总数目:1

-- 使用字符串构造数据
SELECT JSON_ARRAY('abc','def');
JSON_ARRAY(json)      |
----------------------
["abc", "def"]        |
总数目:1

-- 使用以上类型构造数组
SELECT JSON_ARRAY(JSON_ARRAY(1,2),JSON_OBJECT('a','b'),1,true,null,'abc');
JSON_ARRAY(json)      |
----------------------
[[1, 2], {"a": "b"}, 1|
, true, null, "abc"]  |
总数目:1