Dodawanie węzła głównego do danych wyjściowych JSON przy użyciu opcji ROOT (SQL Server)
Dotyczy: SQL Server 2016 (13.x) i nowszych
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics (tylko bezserwerowa pula SQL)
pl-PL: Aby dodać pojedynczy element najwyższego poziomu do danych wyjściowych klauzuli JSON FOR JSON, określ opcję ROOT.
Jeśli nie określisz opcji ROOT, dane wyjściowe JSON nie zawierają elementu głównego.
Przykłady
W poniższej tabeli przedstawiono dane wyjściowe klauzuli FOR JSON z opcją ROOT.
W przykładach w poniższej tabeli przyjęto założenie, że opcjonalny argument RootName jest pusty. Jeśli podasz nazwę dla elementu głównego, ta wartość zastępuje wartość root w przykładach.
Bez opcji ROOT
{
<<json properties>>
}
[
<<json array elements>>
]
Za pomocą opcji ROOT
{
"root": {
<<json properties>>
}
}
{
"root": [
<< json array elements >>
]
}
Oto kolejny przykład klauzuli FOR JSON z opcją ROOT. W tym przykładzie określono wartość opcjonalnego argumentu RootName.
Zapytanie
SELECT TOP 5
BusinessEntityID As Id,
FirstName, LastName,
Title As 'Info.Title',
MiddleName As 'Info.MiddleName'
FROM Person.Person
FOR JSON PATH, ROOT('info')
wynik
{
"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"
}
}]
}
wynik (bez roota)
[{
"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"
}
}]
Dowiedz się więcej o formacie JSON w programie SQL Server i usłudze Azure SQL Database
Klipy wideo firmy Microsoft
Notatka
Niektóre linki wideo w tej sekcji mogą nie działać w tej chwili. Microsoft przenosi zawartość wcześniej dostępną na Channel 9 na nową platformę. Zaktualizujemy linki w miarę migrowania filmów wideo na nową platformę.
Aby zapoznać się z wizualnym wprowadzeniem do wbudowanej obsługi kodu JSON w programie SQL Server i usłudze Azure SQL Database, zobacz następujące wideo: