Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime 13.2 ke atas
Mengembalikan skema gabungan dari semua string JSON dalam grup dalam format DDL.
Sintaks
schema_of_json_agg(jsonStr [, options] ) [FILTER ( WHERE cond ) ]
Fungsi ini juga dapat dipanggil sebagai fungsi jendela dengan menggunakan klausa OVER.
Argumen
-
jsonStr: Sebuah literalSTRINGdenganJSON. -
options: LiteralMAPyang bersifat opsional dengan kunci dan nilai berupaSTRING. Untuk detail tentang opsi, lihatfrom_jsonfungsi. -
cond: Ekspresi opsionalBOOLEANyang memfilter baris yang digunakan untuk agregasi.
Pengembalian
Sebuah STRING yang menyimpan definisi array dari struktur dengan n bidang-bidang string di mana nama kolom terdiri dari set JSON kunci yang unik.
Nilai bidang menyimpan jenis SQL yang diformat turunan.
Skema setiap rekaman digabungkan menurut nama bidang.
Saat dua bidang dengan nama yang sama memiliki jenis yang berbeda di seluruh rekaman, Azure Databricks menggunakan jenis yang paling tidak umum.
Ketika tidak ada jenis seperti itu, jenis diturunkan sebagai STRING.
Misalnya, INT dan DOUBLE menjadi DOUBLE, sementara STRUCT<i INT> dan STRING menjadi STRING.
Skema yang diperoleh dari membaca kolom JSON data sama dengan yang berasal dari yang berikut ini.
SELECT * FROM json.`/my/data`;
Untuk mendapatkan skema string tunggal JSON , gunakan schema_of_json fungsi.
Contoh
> 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>>