Freigeben über


STRUCT -Typ

Gilt für: durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

Stellt Werte mit der Struktur dar, die von einer Sequenz von Feldern beschrieben wird.

Syntax

STRUCT < [fieldName [:] fieldType [NOT NULL] [COMMENT str] [, …] ] >
  • fieldName: Ein Bezeichner, der das Feld benennt. Die Namen müssen eindeutig sein.
  • fieldType: Beliebiger Datentyp.
  • NOT NULL: Wenn eine Angabe erfolgt, garantiert die Struktur, dass der Wert dieses Felds nie NULL ist.
  • COMMENT str: Ein optionales Zeichenfolgenliteral, das das Feld beschreibt.

Grenzwerte

Der Typ unterstützt eine beliebige Anzahl von Feldern größer oder gleich 0.

Literale

Weitere Informationen zum Erzeugen von Literalarraywerten finden Sie unter struct-Funktion und named_struct-Funktion.

Beispiele

> SELECT struct('Spark', 5);
  {Spark, 5}

> SELECT typeof(named_struct('Field1', 'Spark', 'Field2', 5));
  struct<Field1:string,Field2:int>

> SELECT typeof(struct('Spark', 5));
  struct<col1:string,col2:int>

> SELECT typeof(CAST(NULL AS STRUCT<Field1:INT NOT NULL COMMENT 'The first field.',Field2:ARRAY<INT>>));
  struct<Field1:int,Field2:array<int>>