跳到主要内容
版本: 最新版本-3.5

json_object

将一个或多个键值对转换为由键值对组成的 JSON 对象。 键值对按键以字典顺序排序。

提示

所有 JSON 函数和运算符都列在导航栏和概述页面

通过生成列加速您的查询

语法

json_object(key, value, ...)

参数

  • key:JSON 对象中的键。仅支持 VARCHAR 数据类型。

  • value:JSON 对象中的值。仅支持 NULL 值和以下数据类型:STRING、VARCHAR、CHAR、JSON、TINYINT、SMALLINT、INT、BIGINT、LARGEINT、DOUBLE、FLOAT 和 BOOLEAN。

返回值

返回 JSON 对象。

如果键和值的总数为奇数,则 JSON_OBJECT 函数将在最后一个字段中填充 NULL

示例

示例 1:构造一个包含不同数据类型值的 JSON 对象。

mysql> SELECT json_object('name', 'starrocks', 'active', true, 'published', 2020);

-> {"active": true, "name": "starrocks", "published": 2020}

示例 2:使用嵌套的 JSON_OBJECT 函数构造 JSON 对象。

mysql> SELECT json_object('k1', 1, 'k2', json_object('k2', 2), 'k3', json_array(4, 5));

-> {"k1": 1, "k2": {"k2": 2}, "k3": [4, 5]}

示例 3:构造一个空的 JSON 对象。

mysql> SELECT json_object();

-> {}