STRUCT
説明
STRUCT は複雑なデータ型を表現するために広く使用されています。異なるデータ型を持つ要素(フィールドとも呼ばれます)のコレクションを表します。例えば、<a INT, b STRING> のように。
STRUCT 内のフィールド名は一意でなければなりません。フィールドは、プリミティブなデータ型(数値、文字列、日付など)や複雑なデータ型(ARRAY や MAP など)であることができます。
STRUCT 内のフィールドは、別の STRUCT、ARRAY、または MAP にすることもでき、これによりネストされたデータ構造を作成できます。例えば、STRUCT<a INT, b STRUCT<c INT, d INT>, c MAP<INT, INT>, d ARRAY<INT>> のように。
STRUCT データ型は v3.1 以降でサポートされています。v3.1 では、StarRocks テーブルを作成する際に STRUCT カラムを定義し、そのテーブルに STRUCT データをロードし、MAP データをクエリできます。
v2.5 以降、StarRocks はデータレイクからの複雑なデータ型 MAP および STRUCT のクエリをサポートしています。StarRocks が提供する external catalog を使用して、Apache Hive™、Apache Hudi、Apache Iceberg から MAP および STRUCT データをクエリできます。データは ORC および Parquet ファイルからのみクエリできます。external catalog を使用して外部データソースをクエリする方法については、Overview of catalogs および必要な catalog タイプに関連するトピックを参照してください。
構文
STRUCT<name, type>
name: フィールド名で、CREATE TABLE ステートメントで定義されたカラム名と同じです。type: フィールドの型です。サポートされている任意の型を指定できます。