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.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL Analytics-végpont a Microsoft Fabric
Warehouse-ban a Microsoft Fabric
JSON-tömbszöveget hoz létre nulla vagy több kifejezésből.
Szintaxis
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
Érvek
json_array_value
A JSON-tömbben lévő elem értékét meghatározó kifejezés.
json_null_clause
A JSON_OBJECT függvény viselkedésének szabályozására használható, ha value_expressionNULL. A beállítás NULL ON NULL az SQL NULL értékét JSON NULL értékké alakítja a JSON-tömbben lévő elem értékének létrehozásakor. Ha az érték ABSENT ON NULL, a NULL lehetőség kihagyja az elemet a JSON-tömbből. Ennek a beállításnak az alapértelmezett beállítása a ABSENT ON NULL.
Visszaadott érték
Egy érvényes JSON-tömbsztringet ad vissza, amely nvarchar(max) típusú. Ha a beállítás szerepel a RETURNING json beállításban, a JSON-tömb JSON-típusként lesz visszaadva.
A JSON_ARRAY függvény kimenetében megjelenő információkról az alábbi cikkekben talál további információt:
| Cikk | Description |
|---|---|
| Hogyan konvertálja a JSON az SQL Server-adattípusokat JSON-adattípusokká? | A JSON_ARRAY függvény az ebben a FOR JSON cikkben leírt szabályokat használja az SQL-adattípusok JSON-típusokká alakításához a JSON-tömb kimenetében. |
| Hogyan kezeli az FOR JSON a speciális és vezérlő karaktereket | A JSON_ARRAY függvény feloldja a speciális karaktereket, és a JSON-kimenet vezérlőkarakterekét jelöli a jelen FOR JSON cikkben leírtak szerint. |
Példák
1. példa
Az alábbi példa egy üres JSON-tömböt ad vissza.
SELECT JSON_ARRAY();
Eredmény
[]
2. példa
Az alábbi példa egy négy elemet tartalmazó JSON-tömböt ad vissza.
SELECT JSON_ARRAY('a', 1, 'b', 2);
Eredmény
["a",1,"b",2]
3. példa
Az alábbi példa egy három elemet tartalmazó JSON-tömböt ad vissza, mivel az egyik bemeneti érték NULL. Mivel a json_null_clause nincs megadva, és ennek a beállításnak az alapértelmezett értéke, ABSENT ON NULLaz NULL egyik bemenet értéke nem lesz JSON null értékűre konvertálva.
SELECT JSON_ARRAY('a', 1, 'b', NULL);
Eredmény
["a",1,"b"]
4. példa
Az alábbi példa egy négy elemet tartalmazó JSON-tömböt ad vissza. A NULL ON NULL beállítás úgy van megadva, hogy a bemeneti SQL NULL értéke JSON null értékké legyen konvertálva a JSON-tömbben.
SELECT JSON_ARRAY('a', 1, NULL, 2 NULL ON NULL);
Eredmény
["a",1,null,2]
5. példa
Az alábbi példa egy két elemet tartalmazó JSON-tömböt ad vissza. Az egyik elem tartalmaz egy JSON-sztringet, egy másik elem pedig egy JSON-objektumot.
SELECT JSON_ARRAY('a', JSON_OBJECT('name':'value', 'type':1));
Eredmény
["a",{"name":"value","type":1}]
6. példa
Az alábbi példa egy három elemet tartalmazó JSON-tömböt ad vissza. Az egyik elem tartalmaz egy JSON-sztringet, egy másik elem egy JSON-objektumot, egy másik elem pedig egy JSON-tömböt.
SELECT JSON_ARRAY('a', JSON_OBJECT('name':'value', 'type':1), JSON_ARRAY(1, NULL, 2 NULL ON NULL));
Eredmény
["a",{"name":"value","type":1},[1,null,2]]
7. példa
Az alábbi példa egy JSON-tömböt ad vissza változóként vagy SQL-kifejezésként megadott bemenetekkel.
DECLARE @id_value AS NVARCHAR (64) = NEWID();
SELECT JSON_ARRAY(1, @id_value, (SELECT @@SPID));
Eredmény
[1,"4BEA4F9F-D169-414F-AF99-9270FDB2EA62",55]
8. példa
Az alábbi példa egy JSON-tömböt ad vissza soronként a lekérdezésben.
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;
Eredmény
| session_id | infó |
|---|---|
| 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"] |
9. példa
Az alábbi példa json típusú JSON-tömböt ad vissza.
SELECT JSON_ARRAY(1 RETURNING JSON);
Eredmény
[1]
Kapcsolódó tartalom
- JSON-adatok AZ SQL Server