Aracılığıyla paylaş


ROOT Seçeneğiyle JSON Çıkışına Kök Düğüm Ekleme

Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümler Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics (yalnızca sunucusuz SQL havuzu)Microsoft Fabric'te SQL analitik uç noktasıMicrosoft Fabric'te depo veritabanıMicrosoft Fabric'te SQL veritabanı

JSON çıkışına FOR JSON yan tümcesinin tek, üst düzey bir öğe eklemek için ROOT seçeneğini belirtin.

Seçeneğini belirtmezseniz ROOT , JSON çıkışı bir kök öğesi içermez.

Examples

Aşağıdaki tabloda FOR JSON yan cümlesinin çıkışı ROOT seçenekli ve seçeneksiz olarak gösterilmektedir.

Aşağıdaki tablodaki örneklerde, isteğe bağlı RootName bağımsız değişkeninin boş olduğu varsayılır. Kök öğe için bir ad sağlarsanız, bu değer örneklerdeki değerin root yerini alır.

ROOT Seçenek olmadan:

{  
   <<json properties>>  
}  
[  
   <<json array elements>>  
]  

Seçeneğiyle ROOT :

{   
  "root": {  
   <<json properties>>  
 }  
}  
{   
  "root": [  
   << json array elements >>  
  ]  
}  

aşağıda, FOR JSON seçeneğine sahip bir ROOT yan tümcesinin başka bir örneği verilmiştır. Bu örnek, isteğe bağlı RootName bağımsız değişken için bir değer belirtir.

Query

SELECT TOP 5   
       BusinessEntityID As Id,  
       FirstName, LastName,  
       Title As 'Info.Title',  
       MiddleName As 'Info.MiddleName'  
   FROM Person.Person  
   FOR JSON PATH, ROOT('info')

Result

{
    "info": [{
        "Id": 1,
        "FirstName": "Ken",
        "LastName": "Sánchez",
        "Info": {
            "MiddleName": "J"
        }
    }, {
        "Id": 2,
        "FirstName": "Terri",
        "LastName": "Duffy",
        "Info": {
            "MiddleName": "Lee"
        }
    }, {
        "Id": 3,
        "FirstName": "Roberto",
        "LastName": "Tamburello"
    }, {
        "Id": 4,
        "FirstName": "Rob",
        "LastName": "Walters"
    }, {
        "Id": 5,
        "FirstName": "Gail",
        "LastName": "Erickson",
        "Info": {
            "Title": "Ms.",
            "MiddleName": "A"
        }
    }]
}

Sonuç (köksüz)

[{
    "Id": 1,
    "FirstName": "Ken",
    "LastName": "Sánchez",
    "Info": {
        "MiddleName": "J"
    }
}, {
    "Id": 2,
    "FirstName": "Terri",
    "LastName": "Duffy",
    "Info": {
        "MiddleName": "Lee"
    }
}, {
    "Id": 3,
    "FirstName": "Roberto",
    "LastName": "Tamburello"
}, {
    "Id": 4,
    "FirstName": "Rob",
    "LastName": "Walters"
}, {
    "Id": 5,
    "FirstName": "Gail",
    "LastName": "Erickson",
    "Info": {
        "Title": "Ms.",
        "MiddleName": "A"
    }
}]

SQL Veritabanı Altyapısı'nda JSON hakkında daha fazla bilgi edinin

Yerleşik JSON desteğine görsel bir giriş için aşağıdaki videolara bakın:

  • NoSQL ile ilişkisel dünyalar arasında bir köprü olarak JSON