Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime 15.3 und höher
Gibt das kombinierte Schema aller VARIANT-Werte in einer Gruppe im DDL-Format zurück
Syntax
schema_of_variant_agg ( variantExpr ) [FILTER ( WHERE cond ) ]
Argumente
-
variantExpr: EinVARIANT-Ausdruck. -
cond: Ein optionalerBOOLEAN-Ausdruck, der die für die Aggregation verwendeten Zeilen filtert.
Gibt zurück
Ein STRING-Typ mit einer Schemadefinition des variantExpr.
Die Typen im Schema sind die abgeleiteten formatierten SQL-Typen.
Das Schema jedes VARIANT-Werts wird anhand des Feldnamens zusammengeführt. Wenn zwei Felder mit demselben Namen in verschiedenen Datensätzen einen anderen Typ aufweisen, verwendet Azure Databricks den am wenigsten allgemeinen Typ.
Wenn kein solcher Typ vorhanden ist, wird der Typ als VARIANT abgeleitet.
INT und DOUBLE werden beispielsweise zuDOUBLE, TIMESTAMP und STRING hingegen zu VARIANT.
Verwenden Sie die VARIANT-Funktion, um das Schema eines einzelnen -Werts abzuleiten.
Beispiele
-- Simple example
> SELECT schema_of_variant_agg(a) FROM VALUES(parse_json('{"foo": "bar"}')) AS data(a);
OBJECT<foo: STRING>
> SELECT schema_of_variant_agg(a) FROM VALUES(parse_json('[1]')) AS data(a);
ARRAY<BIGINT>
> CREATE TEMPORARY VIEW data(a) AS VALUES
(parse_json('{"foo": "bar", "wing": {"ding": "dong"}}')),
(parse_json('{"wing": 123}'));
> SELECT schema_of_variant_agg(a) FROM data;
OBJECT<foo: STRING, wing: VARIANT>