Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre: SQL Server 2016 (13.x) és későbbi verziók
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics (csak szerver nélküli SQL pool)
SQL analytics endpoint a Microsoft Fabricban
Tárház a Microsoft Fabricban
Adatbázis a Microsoft Fabricban
Ha alapértelmezés szerint el szeretné távolítani a FOR JSON záradék JSON-kimenetét körülvevő szögletes zárójeleket, adja meg a WITHOUT_ARRAY_WRAPPER beállítást. Ezzel a beállítással egysoros eredménnyel egyetlen JSON-objektumot hozhat létre kimenetként, nem pedig egyetlen elemet tartalmazó tömböt.
Ha ezt a beállítást többsoros eredménnyel használja, az eredmény nem lesz érvényes JSON, mivel több elem van, és hiányoznak a szögletes zárójelek.
Példa (egysoros eredmény)
Az alábbi példa a FOR JSON záradék kimenetét mutatja be a WITHOUT_ARRAY_WRAPPER beállítással és anélkül.
Query
SELECT 2015 as year, 12 as month, 15 as day
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
Eredmény a WITHOUT_ARRAY_WRAPPER beállítással
{
"year": 2015,
"month": 12,
"day": 15
}
Eredmény (alapértelmezett) az WITHOUT_ARRAY_WRAPPER beállítás nélkül
[{
"year": 2015,
"month": 12,
"day": 15
}]
Példa (többsoros eredmény)
Íme egy másik példa egy FOR JSON záradékra a WITHOUT_ARRAY_WRAPPER lehetőséggel és anélkül. Ez a példa többsoros eredményt hoz létre. A kimenet érvénytelen JSON, mivel hiányoznak a szögletes zárójelek, és több elemet tartalmaz.
Query
SELECT TOP 3 SalesOrderNumber, OrderDate, Status
FROM Sales.SalesOrderHeader
ORDER BY ModifiedDate
FOR JSON PATH, WITHOUT_ARRAY_WRAPPER
Eredmény a WITHOUT_ARRAY_WRAPPER beállítással
{
"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
}
Eredmény (alapértelmezett) az WITHOUT_ARRAY_WRAPPER beállítás nélkül
[{
"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
}]
További információ a JSON-ról az SQL Database Engine-ben
A beépített JSON-támogatás vizuális bemutatásához tekintse meg az alábbi videókat: