Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
Databricks SQL
Databricks Runtime 13.2 e superior
Retorna o esquema combinado de todas as cadeias de caracteres JSON em um grupo no formato DDL.
Sintaxe
schema_of_json_agg(jsonStr [, options] ) [FILTER ( WHERE cond ) ]
Esta função também pode ser invocada como uma função de janela usando a cláusula OVER.
Argumentos
-
jsonStr: UmSTRINGliteral comJSON. -
options: Um literal opcionalMAPcom chaves e valores que sãoSTRING. Para obter detalhes sobre as opções, consultefrom_jsona função. -
cond: Uma expressão opcionalBOOLEANque filtra as linhas usadas para agregação.
Devoluções
Uma STRING definição de uma matriz de estruturas com n campos de cadeias de caracteres onde os nomes das colunas são derivados do conjunto distinto de JSON chaves.
Os valores de campo contêm os tipos SQL formatados derivados.
O esquema de cada registo é unificado pelo nome do campo.
Quando dois campos com o mesmo nome têm um tipo diferente entre registros, o Azure Databricks usa o tipo menos comum.
Quando esse tipo não existe, o tipo é derivado como um STRING.
Por exemplo, INT e DOUBLE tornar-se DOUBLE, enquanto STRUCT<i INT> e STRING tornar-se STRING.
O esquema obtido a partir da leitura de uma coluna de JSON dados é o mesmo que o derivado do seguinte.
SELECT * FROM json.`/my/data`;
Para derivar o esquema de uma única JSON cadeia de caracteres, use a função schema_of_json.
Exemplos
> SELECT schema_of_json_agg(a) FROM VALUES('{"foo": "bar"}') AS data(a);
STRUCT<foo: STRING>
> SELECT schema_of_json_agg(a) FROM VALUES('[1]') AS data(a);
ARRAY<BIGINT>
> CREATE TEMPORARY VIEW data(a) AS VALUES
('{"foo": "bar", "wing": {"ding": "dong"}}'),
('{"top": "level", "wing": {"stop": "go"}}')
> SELECT schema_of_json_agg(a) FROM data;
STRUCT<foo: STRING,top: STRING,wing: STRUCT<ding: STRING, stop: STRING>>