メインコンテンツまでスキップ
バージョン: Stable-3.3

DESC

説明

このステートメントを使用して、以下の操作を行うことができます。

  • StarRocks クラスターに保存されているテーブルのスキーマを表示し、テーブルの ソートキーマテリアライズドビュー のタイプを確認します。
  • Apache Hive™ などの外部データソースに保存されているテーブルのスキーマを表示します。この操作は StarRocks 2.4 以降のバージョンでのみ実行できます。

構文

DESC[RIBE] { [[<catalog_name>.]<db_name>.]<table_name> [ALL] | FILES(files_loading_properties) }

パラメータ

パラメータ必須説明
catalog_nameいいえ内部カタログまたは外部カタログの名前。
  • パラメータの値を内部カタログの名前、つまり default_catalog に設定すると、StarRocks クラスターに保存されているテーブルのスキーマを表示できます。
  • パラメータの値を外部カタログの名前に設定すると、外部データソースに保存されているテーブルのスキーマを表示できます。
db_nameいいえデータベース名。
table_nameはいテーブル名。
ALLいいえ
  • このキーワードを指定すると、StarRocks クラスターに保存されているテーブルのソートキー、マテリアライズドビュー、およびスキーマのタイプを表示できます。このキーワードを指定しない場合は、テーブルスキーマのみを表示します。
  • 外部データソースに保存されているテーブルのスキーマを表示する場合は、このキーワードを指定しないでください。
FILESいいえFILES() テーブル関数。バージョン 3.3.4 以降では、FILES() を使用してリモートストレージに保存されているファイルのスキーマ情報を表示できます。詳細情報は Function reference - FILES() を参照してください。

出力

+-----------+---------------+-------+------+------+-----+---------+-------+
| IndexName | IndexKeysType | Field | Type | Null | Key | Default | Extra |
+-----------+---------------+-------+------+------+-----+---------+-------+

次の表は、このステートメントによって返されるパラメータを説明しています。

パラメータ説明
IndexNameテーブル名。外部データソースに保存されているテーブルのスキーマを表示する場合、このパラメータは返されません。
IndexKeysTypeテーブルのソートキーのタイプ。外部データソースに保存されているテーブルのスキーマを表示する場合、このパラメータは返されません。
Fieldカラム名。
Typeカラムのデータ型。
Nullカラムの値が NULL 可能かどうか。
  • yes: 値が NULL 可能であることを示します。
  • no: 値が NULL ではないことを示します。
Keyカラムがソートキーとして使用されているかどうか。
  • true: カラムがソートキーとして使用されていることを示します。
  • false: カラムがソートキーとして使用されていないことを示します。
Defaultカラムのデータ型のデフォルト値。データ型にデフォルト値がない場合、NULL が返されます。
Extra
  • StarRocks クラスターに保存されているテーブルのスキーマを表示する場合、このフィールドはカラムに関する以下の情報を表示します。
    • カラムで使用されている集計関数、例えば SUMMIN
    • カラムにブルームフィルターインデックスが作成されているかどうか。作成されている場合、Extra の値は BLOOM_FILTER です。
  • 外部データソースに保存されているテーブルのスキーマを表示する場合、このフィールドはカラムがパーティションカラムであるかどうかを表示します。パーティションカラムである場合、Extra の値は partition key です。

Note: 出力にマテリアライズドビューがどのように表示されるかについては、例 2 を参照してください。

例 1: StarRocks クラスターに保存されている example_table のスキーマを表示します。

DESC example_table;

または

DESC default_catalog.example_db.example_table;

前述のステートメントの出力は以下の通りです。

+-------+---------------+------+-------+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------+------+-------+---------+-------+
| k1 | TINYINT | Yes | true | NULL | |
| k2 | DECIMAL(10,2) | Yes | true | 10.5 | |
| k3 | CHAR(10) | Yes | false | NULL | |
| v1 | INT | Yes | false | NULL | |
+-------+---------------+------+-------+---------+-------+

例 2: StarRocks クラスターに保存されている sales_records のスキーマ、ソートキーのタイプ、およびマテリアライズドビューを表示します。以下の例では、sales_records に基づいて store_amt というマテリアライズドビューが作成されています。

DESC db1.sales_records ALL;

+---------------+---------------+-----------+--------+------+-------+---------+-------+
| IndexName | IndexKeysType | Field | Type | Null | Key | Default | Extra |
+---------------+---------------+-----------+--------+------+-------+---------+-------+
| sales_records | DUP_KEYS | record_id | INT | Yes | true | NULL | |
| | | seller_id | INT | Yes | true | NULL | |
| | | store_id | INT | Yes | true | NULL | |
| | | sale_date | DATE | Yes | false | NULL | NONE |
| | | sale_amt | BIGINT | Yes | false | NULL | NONE |
| | | | | | | | |
| store_amt | AGG_KEYS | store_id | INT | Yes | true | NULL | |
| | | sale_amt | BIGINT | Yes | false | NULL | SUM |
+---------------+---------------+-----------+--------+------+-------+---------+-------+

例 3: Hive クラスターに保存されている hive_table のスキーマを表示します。

DESC hive_catalog.hive_db.hive_table;

+-------+----------------+------+-------+---------+---------------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------------+------+-------+---------+---------------+
| id | INT | Yes | false | NULL | |
| name | VARCHAR(65533) | Yes | false | NULL | |
| date | DATE | Yes | false | NULL | partition key |
+-------+----------------+------+-------+---------+---------------+

例 4: AWS S3 に保存されている parquet ファイル lineorder のスキーマを表示します。

NOTE

リモートストレージに保存されているファイルの場合、DESC は FieldTypeNull の3つのフィールドのみを返します。

DESC FILES(
"path" = "s3://inserttest/lineorder.parquet",
"format" = "parquet",
"aws.s3.access_key" = "AAAAAAAAAAAAAAAAAAAA",
"aws.s3.secret_key" = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB",
"aws.s3.region" = "us-west-2"
);

+------------------+------------------+------+
| Field | Type | Null |
+------------------+------------------+------+
| lo_orderkey | int | YES |
| lo_linenumber | int | YES |
| lo_custkey | int | YES |
| lo_partkey | int | YES |
| lo_suppkey | int | YES |
| lo_orderdate | int | YES |
| lo_orderpriority | varchar(1048576) | YES |
| lo_shippriority | int | YES |
| lo_quantity | int | YES |
| lo_extendedprice | int | YES |
| lo_ordtotalprice | int | YES |
| lo_discount | int | YES |
| lo_revenue | int | YES |
| lo_supplycost | int | YES |
| lo_tax | int | YES |
| lo_commitdate | int | YES |
| lo_shipmode | varchar(1048576) | YES |
+------------------+------------------+------+
17 rows in set (0.05 sec)

参考