schema_of_json_agg
összesítő függvény
A következőkre vonatkozik: Databricks SQL Databricks Runtime 13.2 és újabb
A csoport összes JSON-sztringjének összevont sémáját adja vissza DDL formátumban.
Syntax
schema_of_json_agg(jsonStr [, options] ) [FILTER ( WHERE cond ) ]
Ez a függvény ablakfüggvényként is meghívható a OVER
záradék használatával.
Argumentumok
jsonStr
: EgySTRING
literál a következővelJSON
: .options
: VálaszthatóMAP
konstans kulcsokkal és értékekkelSTRING
. A beállítások részleteiért lásd from_json függvényt.cond
: Nem kötelezőBOOLEAN
kifejezés, amely az összesítéshez használt sorokat szűri.
Válaszok
A STRING
szerkezetek tömbjének definícióját tartalmazó, sztringmezőkkel rendelkező n
tömb, ahol az oszlopnevek a kulcsok különböző készletéből JSON
származnak.
A mezőértékek a származtatott formázott SQL-típusokat tartják.
Az egyes rekordok sémája mezőnévvel egyesül.
Ha két azonos nevű mező különböző típusú rekordokat tartalmaz, az Azure Databricks a legkevésbé gyakori típust használja.
Ha ilyen típus nem létezik, a típus a következőképpen lesz származtatva STRING
.
Például, INT
és váljon DOUBLE
, amíg STRUCT<i INT>
és STRING
válik STRING
DOUBLE
.
Az adatoszlop olvasásából JSON
nyert séma megegyezik az alábbiakból származtatott sémával.
SELECT * FROM json.`/my/data`;
Egyetlen JSON
sztring sémájának származtatásához használja schema_of_json függvényt.
Példák
> 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>>
Kapcsolódó függvények
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: