Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoyEste explorador ya no se admite.
Actualice a Microsoft Edge para aprovechar las características y actualizaciones de seguridad más recientes, y disponer de soporte técnico.
se aplica a:Azure SQL Database
punto de conexión de análisis de SQL de Azure SQL
y almacenamiento en Microsoft Fabric
Construye una matriz JSON a partir de una agregación de datos o columnas SQL.
Para crear un objeto JSON a partir de un agregado, use JSON_OBJECTAGG.
Nota
Tanto json funciones de agregado JSON_OBJECTAGG
y JSON_ARRAYAGG
están actualmente en versión preliminar para Azure SQL Database, Instancia administrada de Azure SQL (configurada con la always-up-to-date update policy) y Microsoft Fabric Data Warehouse.
Convenciones de sintaxis de Transact-SQL
JSON_ARRAYAGG (value_expression [ order_by_clause ] [ json_null_clause ] )
json_null_clause ::= NULL ON NULL | ABSENT ON NULL
order_by_clause ::= ORDER BY <column_list>
La expresión de valor puede ser una columna o expresión en una consulta o constantes o literales.
Opcional.
json_null_clause se puede usar para controlar el comportamiento de la función JSON_ARRAYAGG
cuando value_expression es NULL
. La opción NULL ON NULL
convierte el valor NULL
de SQL en un valor NULL de JSON al generar el valor del elemento en la matriz JSON. La opción ABSENT ON NULL
omitirá el elemento de la matriz JSON si el valor es NULL
. Si se omite, ABSENT ON NULL
es el valor predeterminado.
Opcional. El orden de los elementos de la matriz JSON resultante se puede especificar para ordenar las filas de entrada al agregado.
En el siguiente ejemplo se devuelve una matriz JSON vacía.
SELECT JSON_ARRAYAGG(null);
Resultado
[]
En el siguiente ejemplo se construye una matriz JSON con tres elementos de un conjunto de resultados.
SELECT JSON_ARRAYAGG( c1 )
FROM (
VALUES ('c'), ('b'), ('a')
) AS t(c1);
Resultado
["c","b","a"]
En el ejemplo siguiente se construye una matriz JSON con tres elementos ordenados por el valor de la columna.
SELECT JSON_ARRAYAGG( c1 ORDER BY c1)
FROM (
VALUES ('c'), ('b'), ('a')
) AS t(c1);
Resultado
["a","b","c"]
En el ejemplo siguiente se devuelve un conjunto de resultados con dos columnas. La primera columna contiene el valor object_id
. La segunda columna contiene una matriz JSON que contiene los nombres de las columnas. Las columnas de la matriz JSON se ordenan en función del valor column_id
.
SELECT TOP(5) c.object_id, JSON_ARRAYAGG(c.name ORDER BY c.column_id) AS column_list
FROM sys.columns AS c
GROUP BY c.object_id;
Resultado
object_id | lista_de_columnas |
---|---|
3 | ["rsid","rscolid","hbcolid","rcmodified","ti","cid","ordkey","maxinrowlen","status","offset","nullbit","bitpos","colguid","ordlock"] |
5 | ["rowsetid","ownertype","idmajor","idminor","numpart","status","fgidfs","rcrows","cmprlevel","fillfact","maxnullbit","maxleaf","maxint","minleaf","minint","rsguid","lockres","scope_id"] |
6 | ["id","subid","partid","version","segid","cloneid","rowsetid","dbfragid","status"] |
7 | ["auid","type","ownerid","status","fgid","pgfirst","pgroot","pgfirstiam","pcused","pcdata","pcreserved"] |
8 | ["status","fileid","name","filename"] |
Eventos
31 mar, 23 - 2 abr, 23
Evento de aprendizaje de SQL, Fabric y Power BI más grande. 31 de marzo – 2 de abril. Use el código FABINSIDER para ahorrar $400.
Regístrate hoy