openjson怎么用
时间: 2023-10-02 18:07:54 浏览: 53
JSON的使用
OpenJSON 是 SQL Server 2016 引入的一种 T-SQL 函数,用于解析 JSON 格式的数据。以下是使用 OpenJSON 函数的基本示例:
假设有一个名为 json_data 的 JSON 格式字符串变量,其中包含一个名为 "name" 的键和它的值 "Alice":
```
DECLARE @json_data NVARCHAR(MAX) = '{"name": "Alice"}';
```
我们可以使用 OpenJSON 函数将它解析成一张表:
```
SELECT *
FROM OPENJSON(@json_data);
```
输出结果如下:
```
key value type
---- -------------- ------
name Alice 1
```
其中,key 代表 JSON 中的键名,value 是对应的值,type 是值的数据类型(1 代表字符串)。
如果 JSON 数据中有多个键值对,我们可以使用 WITH 子句来指定每个键值对的名称及其数据类型。例如,对于以下 JSON 数据:
```
DECLARE @json_data NVARCHAR(MAX) = '{"name": "Alice", "age": 20}';
```
我们可以使用以下代码解析它:
```
SELECT name, age
FROM OPENJSON(@json_data)
WITH (
name NVARCHAR(50) '$.name',
age INT '$.age'
);
```
输出结果如下:
```
name age
---- ---
Alice 20
```
在 WITH 子句中,我们通过指定路径表达式来获取对应键的值,例如 `$.name` 表示获取键名为 "name" 的值。
除了解析 JSON 数据,OpenJSON 还支持将 JSON 数据直接插入表中,以及将表数据转换为 JSON 格式。具体使用方法可以参考官方文档。
阅读全文