在SQL Server中将json数组读入行
给定下面的示例json数据,我如何编写一个查询来一步提取所有数组数据?我的目标是为ActionRecs数组4中的每个项目设置一行。我的实际json更复杂,但我认为这是我的目标的一个很好的例子在SQL Server中将json数组读入行,json,sql-server,json-query,Json,Sql Server,Json Query,给定下面的示例json数据,我如何编写一个查询来一步提取所有数组数据?我的目标是为ActionRecs数组4中的每个项目设置一行。我的实际json更复杂,但我认为这是我的目标的一个很好的例子 declare @json2 nvarchar(max) set @json2 = '{ "RequestId": "1", "ActionRecs": [ { "Type": "Submit", "Employee": "Jo
declare @json2 nvarchar(max)
set @json2 = '{
"RequestId": "1",
"ActionRecs": [
{
"Type": "Submit",
"Employee": "Joe"
},
{
"Type": "Review",
"Employee": "Betty"
},
{
"Type": "Approve",
"Employee": "Sam"
},
{
"Type": "Approve",
"Employee": "Bill"
}
]
}'
SELECT x.*
, JSON_QUERY(@json2, '$.ActionRecs') as ActionArray
from OPENJSON(@json2)
with (Id varchar(5) '$.RequestId') as x
一种可能的方法是使用OPENJSONand交叉应用: 输出:
Id Type Employee
1 Submit Joe
1 Review Betty
1 Approve Sam
1 Approve Bill
一种可能的方法是使用OPENJSONand交叉应用: 输出:
Id Type Employee
1 Submit Joe
1 Review Betty
1 Approve Sam
1 Approve Bill