- SQL 教程
- SQL - 首页
- SQL - 概述
- SQL - RDBMS 概念
- SQL - 数据库
- SQL - 语法
- SQL - 数据类型
- SQL - 运算符
- SQL - 表达式
- SQL 数据库
- SQL - 创建数据库
- SQL - 删除数据库
- SQL - 选择数据库
- SQL - 重命名数据库
- SQL - 显示数据库
- SQL - 备份数据库
- SQL 表
- SQL - 创建表
- SQL - 显示表
- SQL - 重命名表
- SQL - 截断表
- SQL - 克隆表
- SQL - 临时表
- SQL - 修改表
- SQL - 删除表
- SQL - 删除表
- SQL - 约束
- SQL 查询
- SQL - INSERT 查询
- SQL - SELECT 查询
- SQL - SELECT INTO
- SQL - INSERT INTO SELECT
- SQL - UPDATE 查询
- SQL - DELETE 查询
- SQL - 排序结果
- SQL 视图
- SQL - 创建视图
- SQL - 更新视图
- SQL - 删除视图
- SQL - 重命名视图
- SQL 运算符和子句
- SQL - WHERE 子句
- SQL - TOP 子句
- SQL - DISTINCT 子句
- SQL - ORDER BY 子句
- SQL - GROUP BY 子句
- SQL - HAVING 子句
- SQL - AND & OR
- SQL - BOOLEAN (BIT) 运算符
- SQL - LIKE 运算符
- SQL - IN 运算符
- SQL - ANY, ALL 运算符
- SQL - EXISTS 运算符
- SQL - CASE
- SQL - NOT 运算符
- SQL - 不等于
- SQL - IS NULL
- SQL - IS NOT NULL
- SQL - NOT NULL
- SQL - BETWEEN 运算符
- SQL - UNION 运算符
- SQL - UNION vs UNION ALL
- SQL - INTERSECT 运算符
- SQL - EXCEPT 运算符
- SQL - 别名
- SQL 连接
- SQL - 使用连接
- SQL - INNER JOIN
- SQL - LEFT JOIN
- SQL - RIGHT JOIN
- SQL - CROSS JOIN
- SQL - FULL JOIN
- SQL - 自连接
- SQL - DELETE JOIN
- SQL - UPDATE JOIN
- SQL - LEFT JOIN vs RIGHT JOIN
- SQL - UNION vs JOIN
- SQL 键
- SQL - UNIQUE KEY
- SQL - PRIMARY KEY
- SQL - FOREIGN KEY
- SQL - 组合键
- SQL - 备选键
- SQL 索引
- SQL - 索引
- SQL - 创建索引
- SQL - 删除索引
- SQL - 显示索引
- SQL - UNIQUE INDEX
- SQL - 聚簇索引
- SQL - 非聚簇索引
- 高级 SQL
- SQL - 通配符
- SQL - 注释
- SQL - 注入
- SQL - 托管
- SQL - MIN & MAX
- SQL - NULL 函数
- SQL - CHECK 约束
- SQL - DEFAULT 约束
- SQL - 存储过程
- SQL - NULL 值
- SQL - 事务
- SQL - 子查询
- SQL - 处理重复项
- SQL - 使用序列
- SQL - 自动递增
- SQL - 日期和时间
- SQL - 游标
- SQL - 通用表表达式
- SQL - GROUP BY vs ORDER BY
- SQL - IN vs EXISTS
- SQL - 数据库调优
- SQL 函数参考
- SQL - 日期函数
- SQL - 字符串函数
- SQL - 聚合函数
- SQL - 数值函数
- SQL - 文本和图像函数
- SQL - 统计函数
- SQL - 逻辑函数
- SQL - 游标函数
- SQL - JSON 函数
- SQL - 转换函数
- SQL - 数据类型函数
- SQL 有用资源
- SQL - 问答
- SQL - 快速指南
- SQL - 有用函数
- SQL - 有用资源
- SQL - 讨论
SQL - JSON_OBJECT() 函数
SQL 的JSON_OBJECT()函数用于根据参数的SQL表达式的结果创建JSON对象。它从零个或多个表达式构造JSON对象的文本。
JSON对象包含键值对。每个键在JSON中都表示为字符串,值可以是任何类型。键和值用冒号分隔,每个键值对用逗号分隔。
花括号 { 表示JSON对象。
语法
以下是SQL JSON_OBJECT()函数的语法:
JSON_OBJECT ( [ <json_key_value> [,...n] ] [ json_null_clause ] ) <json_key_value> ::= json_key_name : value_expression <json_null_clause> ::= NULL ON NULL | ABSENT ON NULL
参数
参数分为三种类型:
json_key_name - 它是一个字符表达式,定义JSON键名值。
value_expression - 它是一个表达式,定义JSON键的值。
json_null_clause - 当value_expression为NULL时,它可以用来控制JSON_OBJECT函数的行为。当生成JSON键值时,NULL ON NULL选项将SQL NULL值转换为JSON null值。ABSENT ON NULL选项如果值为NULL,则忽略整个键。
返回值
它返回一个有效的nvarchar(max)类型的JSON对象字符串。
示例
以下示例返回具有两个键的JSON对象:
SELECT JSON_OBJECT('name':'value', 'type':4) AS JSON_OBJECT;
输出
这将显示以下结果:
+-----------------------------+ | JSON_OBJECT | +-----------------------------+ | {"name":"value","type":4} | +-----------------------------+
示例
以下示例返回一个只有一个键的JSON对象,因为其中一个键的值为NULL,并且指定了ABSENT ON NULL选项:
SELECT JSON_OBJECT('name':'value', 'type':NULL ABSENT ON NULL) AS JSON_OBJECT;
输出
这将显示以下结果:
+-------------------+ | JSON_OBJECT | +-------------------+ | {"name":"value"} | +-------------------+
示例
以下示例返回一个空的JSON对象:
SELECT JSON_OBJECT() AS JSON_OBJECT;
输出
这将显示以下结果:
+-------------------+ | JSON_OBJECT | +-------------------+ | {} | +-------------------+
示例
以下示例返回一个具有两个键的JSON对象。一个键包含JSON字符串,另一个键包含JSON数组:
SELECT JSON_OBJECT('name':'value', 'type':JSON_ARRAY(4, 6)) AS JSON_OBJECT;
输出
这将显示以下结果:
+-----------------------------+ | JSON_OBJECT | +-----------------------------+ |{"name":"value","type":[4,6]}| +-----------------------------+
示例
以下示例返回一个具有两个键的JSON对象。一个键包含JSON字符串,另一个键包含JSON对象:
SELECT JSON_OBJECT('name':'value', 'type':JSON_OBJECT('type_id':4, 'name':'t')) AS JSON_OBJECT;
输出
这将显示以下结果:
+------------------------------------------------+ | JSON_OBJECT | +------------------------------------------------+ |{"name":"value","type":{"type_id":4,"name":"t"}}| +------------------------------------------------+
sql-json-functions.htm
广告