Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Pour supprimer les crochets qui entourent la sortie JSON de la clause FOR JSON par défaut, spécifiez l’option WITHOUT_ARRAY_WRAPPER. Utilisez cette option avec un résultat d’une seule ligne pour générer un seul objet JSON en tant que sortie au lieu d’un tableau avec un seul élément.
Si vous utilisez cette option avec un résultat de plusieurs lignes, la sortie résultante n’est pas un JSON valide en raison de la présence de plusieurs éléments et de l’absence de crochets.
Exemple (résultat d’une seule ligne)
L’exemple suivant montre la sortie de la clause FOR JSON avec et sans l’option WITHOUT_ARRAY_WRAPPER.
Query
SELECT 2015 as year, 12 as month, 15 as day
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
Résultat avec l’option WITHOUT_ARRAY_WRAPPER
{
"year": 2015,
"month": 12,
"day": 15
}
Résultat (valeur par défaut) sans l’option WITHOUT_ARRAY_WRAPPER
[{
"year": 2015,
"month": 12,
"day": 15
}]
Exemple (résultat de plusieurs lignes)
Voici un autre exemple de clause FOR JSON avec et sans option WITHOUT_ARRAY_WRAPPER. Cet exemple produit un résultat de plusieurs lignes. La sortie n’est pas un JSON valide en raison de la présence de plusieurs éléments et de l’absence de crochets.
Query
SELECT TOP 3 SalesOrderNumber, OrderDate, Status
FROM Sales.SalesOrderHeader
ORDER BY ModifiedDate
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
Résultat avec l’option WITHOUT_ARRAY_WRAPPER
{
"SalesOrderNumber": "SO43662",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}, {
"SalesOrderNumber": "SO43661",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}, {
"SalesOrderNumber": "SO43660",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}
Résultat (valeur par défaut) sans l’option WITHOUT_ARRAY_WRAPPER
[{
"SalesOrderNumber": "SO43662",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}, {
"SalesOrderNumber": "SO43661",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}, {
"SalesOrderNumber": "SO43660",
"OrderDate": "2011-05-31T00:00:00",
"Status": 5
}]
En savoir plus sur JSON dans le moteur de base de données SQL
Pour une présentation visuelle de la prise en charge JSON intégrée, consultez les vidéos suivantes :