在一个JSON字段SQL中插入更多数组

我有两个桌子

drop table #grt
create table #grt 
(
Name nvarchar(100),Decision nvarchar(100),Value nvarchar(100)
)

drop table #grt_name
create table #grt_name
(
Name nvarchar(100),Value nvarchar(100)
)


insert into #grt_name ([name],Decision,[Value]) 
values
('Strategy',NULL,NULL)


insert into #grt ([name],[Value]) 
values
--('GRT_Strategy',NULL),('dp','Procceed','False'),('adr',('adr_fcy',('nc','False')
我想放入JSON结构的

。当我只有以下两个表时,一切正常:

select JSON_QUERY((
select gn.name as 'name',gn.Decision as 'Decision',gn.value as 'Value',JSON_QUERY(( SELECT
                   name,decision,value
                FROM #grt
                FOR JSON PATH  
              )) Rules
    from #grt_name gn
    FOR JSON PATH
)) Strategy
FOR JSON PATH

答案是

[
{
    "Strategy": [
        {
            "Rules": [
                {
                    "decision": "Procceed","name": "Dead Person","value": "False"
                },{
                    "decision": "Procceed","name": "Address","name": "Address_in_foreign_country","name": "Not_resident","value": "False"
                }
            ],"name": "GRT_Strategy"
        }
    ]
}
]

我的问题是如何在rules字段中再插入一次Strategy字段? 我想要的答案是

[
    {
        "Strategy": [
            {
                "Rules": [
                    {
                        "decision": "Procceed","name": "dp","value": "False"
                    },{
                        "decision": "Procceed","name": "adr","name": "adr_fcy","name": "nc","value": "False"
                    }
                ],"name": "Strategy"
            },{
                "Rules": [
                    {
                        "decision": "Procceed","name": "Strategy"
            }
        ]
    }
]

我正在使用sql-server 2017。

caowei5323013 回答:在一个JSON字段SQL中插入更多数组

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3082937.html

大家都在问