ROOT 옵션을 사용하여 JSON 출력에 루트 노드 추가(SQL Server)
적용 대상: SQL Server 2016(13.x) 이상 Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics(서버리스 SQL 풀에만 해당)
단일 최상위 요소를 FOR JSON 절의 JSON 출력에 추가하려면 ROOT 옵션을 사용합니다.
ROOT 옵션을 지정하지 않은 경우 JSON 출력에는 루트 요소가 포함되지 않습니다.
예제
다음 표에는 ROOT 옵션을 사용한 경우와 사용하지 않은 경우 FOR JSON 절의 출력이 나와 있습니다.
다음 표의 예에서는 선택적 RootName 인수가 비어 있다고 가정합니다. 루트 요소의 이름을 입력하면 예의 root 값이 이 값으로 바뀝니다.
ROOT 옵션 없이
{
<<json properties>>
}
[
<<json array elements>>
]
ROOT 옵션 사용
{
"root": {
<<json properties>>
}
}
{
"root": [
<< json array elements >>
]
}
다음은 ROOT 옵션이 있는 FOR JSON 절의 또 다른 예입니다. 이 예에서는 선택적 RootName 인수의 값을 지정합니다.
쿼리
SELECT TOP 5
BusinessEntityID As Id,
FirstName, LastName,
Title As 'Info.Title',
MiddleName As 'Info.MiddleName'
FROM Person.Person
FOR JSON PATH, ROOT('info')
결과
{
"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"
}
}]
}
결과(루트 제외)
[{
"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 Server 및 Azure SQL Database의 JSON에 대해 자세히 알아보기
Microsoft 비디오
참고 항목
이 섹션의 일부 비디오 링크는 현재 작동하지 않을 수 있습니다. Microsoft는 이전에 Channel 9에 있던 콘텐츠를 새 플랫폼으로 마이그레이션하고 있습니다. 비디오가 새 플랫폼으로 마이그레이션되면 링크를 업데이트할 예정입니다.
SQL Server 및 Azure SQL Database의 기본 제공 JSON 지원에 대한 시각적 소개는 다음 비디오를 참조하세요.
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기