Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL Analytics-eindpunt in Microsoft Fabric
Warehouse in Microsoft Fabric
Hiermee maakt u JSON-matrixtekst van nul of meer expressies.
Syntaxis
JSON_ARRAY ( [ <json_array_value> [ , ...n ] ] [ <json_null_clause> ] [ RETURNING json ] )
<json_array_value> ::= value_expression
<json_null_clause> ::=
NULL ON NULL
| ABSENT ON NULL
Argumenten
json_array_value
Een expressie die de waarde van het element in de JSON-matrix definieert.
json_null_clause
Kan worden gebruikt om het gedrag van JSON_OBJECT functie te bepalen wanneer value_expression is NULL. De optie NULL ON NULL de SQL-NULL-waarde converteert naar een JSON-NULL-waarde bij het genereren van de waarde van het element in de JSON-matrix. Met de optie ABSENT ON NULL wordt het element in de JSON-matrix weggelaten als de waarde is NULL. De standaardinstelling voor deze optie is ABSENT ON NULL.
Retourwaarde
Retourneert een geldige JSON-matrixtekenreeks van nvarchar(max) type. Als de RETURNING json optie is opgenomen, wordt de JSON-matrix geretourneerd als json-type .
Zie de volgende artikelen voor meer informatie over wat u ziet in de uitvoer van de functie JSON_ARRAY:
| Article | Description |
|---|---|
| Hoe FOR JSON SQL Server-gegevenstypen naar JSON-gegevenstypen converteert | De JSON_ARRAY-functie gebruikt de regels die in dit FOR JSON artikel worden beschreven om SQL-gegevenstypen te converteren naar JSON-typen in de uitvoer van de JSON-matrix. |
| Hoe VOOR JSON speciale tekens en besturingstekens escapen | De JSON_ARRAY functie escapet speciale tekens en vertegenwoordigt besturingstekens in de JSON-uitvoer, zoals beschreven in dit FOR JSON artikel. |
Voorbeelden
Voorbeeld 1
In het volgende voorbeeld wordt een lege JSON-matrix geretourneerd.
SELECT JSON_ARRAY();
resultaat
[]
Voorbeeld 2
In het volgende voorbeeld wordt een JSON-matrix met vier elementen geretourneerd.
SELECT JSON_ARRAY('a', 1, 'b', 2);
resultaat
["a",1,"b",2]
Voorbeeld 3
In het volgende voorbeeld wordt een JSON-matrix met drie elementen geretourneerd, omdat een van de invoerwaarden is NULL. Omdat de json_null_clause wordt weggelaten en de standaardwaarde voor deze optie is ABSENT ON NULL, wordt de NULL waarde in een van de invoerwaarden niet geconverteerd naar een JSON-null-waarde.
SELECT JSON_ARRAY('a', 1, 'b', NULL);
resultaat
["a",1,"b"]
Voorbeeld 4
In het volgende voorbeeld wordt een JSON-matrix met vier elementen geretourneerd. De NULL ON NULL optie wordt opgegeven, zodat elke SQL NULL-waarde in de invoer wordt geconverteerd naar JSON null-waarde in de JSON-matrix.
SELECT JSON_ARRAY('a', 1, NULL, 2 NULL ON NULL);
resultaat
["a",1,null,2]
Voorbeeld 5
In het volgende voorbeeld wordt een JSON-matrix met twee elementen geretourneerd. Eén element bevat een JSON-tekenreeks en een ander element bevat een JSON-object.
SELECT JSON_ARRAY('a', JSON_OBJECT('name':'value', 'type':1));
resultaat
["a",{"name":"value","type":1}]
Voorbeeld 6
In het volgende voorbeeld wordt een JSON-matrix met drie elementen geretourneerd. Eén element bevat een JSON-tekenreeks, een ander element bevat een JSON-object en een ander element bevat een JSON-matrix.
SELECT JSON_ARRAY('a', JSON_OBJECT('name':'value', 'type':1), JSON_ARRAY(1, NULL, 2 NULL ON NULL));
resultaat
["a",{"name":"value","type":1},[1,null,2]]
Voorbeeld 7
In het volgende voorbeeld wordt een JSON-matrix geretourneerd met de invoer die is opgegeven als variabelen of SQL-expressies.
DECLARE @id_value AS NVARCHAR (64) = NEWID();
SELECT JSON_ARRAY(1, @id_value, (SELECT @@SPID));
resultaat
[1,"4BEA4F9F-D169-414F-AF99-9270FDB2EA62",55]
Voorbeeld 8
In het volgende voorbeeld wordt een JSON-matrix per rij in de query geretourneerd.
SELECT s.session_id,
JSON_ARRAY(s.host_name, s.program_name, s.client_interface_name)
FROM sys.dm_exec_sessions AS s
WHERE s.is_user_process = 1;
resultaat
| session_id | info |
|---|---|
| 52 | ["WIN16-VM","Microsoft SQL Server Management Studio - Query",".Net SqlClient Data Provider"] |
| 55 | ["WIN16-VM","Microsoft SQL Server Management Studio - Query",".Net SqlClient Data Provider"] |
| 56 | ["WIN19-VM","SQLServerCEIP",".Net SqlClient Data Provider"] |
Voorbeeld 9
In het volgende voorbeeld wordt een JSON-matrix geretourneerd als json-type .
SELECT JSON_ARRAY(1 RETURNING JSON);
resultaat
[1]
Verwante inhoud
- JSON-gegevens in SQL Server