DESC
説明
このステートメントを使用して、以下の操作を行うことができます。
- StarRocks クラスターに保存されているテーブルのスキーマを表示し、テーブルの ソートキー と マテリアライズドビュー のタイプを確認します。
- Apache Hive™ などの外部データソースに保存されているテーブルのスキーマを表示します。この操作は StarRocks 2.4 以降のバージョンでのみ実行できます。
構文
DESC[RIBE] { [[<catalog_name>.]<db_name>.]<table_name> [ALL] | FILES(files_loading_properties) }
パラメータ
パラメータ | 必須 | 説明 |
---|---|---|
catalog_name | いいえ | 内部カタログまたは外部カタログの名前。
|
db_name | いいえ | データベース名。 |
table_name | はい | テーブル名。 |
ALL | いいえ |
|
FILES | いいえ | FILES() テーブル関数。バージョン 3.3.4 以降では、FILES() を使用してリモートストレージに保存されているファイルのスキーマ情報を表示できます。詳細情報は Function reference - FILES() を参照してください。 |
出力
+-----------+---------------+-------+------+------+-----+---------+-------+
| IndexName | IndexKeysType | Field | Type | Null | Key | Default | Extra |
+-----------+---------------+-------+------+------+-----+---------+-------+
次の表は、このステートメントによって返されるパラメータを説明しています。
パラメータ | 説明 |
---|---|
IndexName | テーブル名。外部データソースに保存されているテーブルのスキーマを表示する場合、このパラメータは返されません。 |
IndexKeysType | テーブルのソートキーのタイプ。外部データソースに保存されているテーブルのスキーマを表示する場合、このパラメータは返されません。 |
Field | カラム名。 |
Type | カラムのデータ型。 |
Null | カラムの値が NULL 可能かどうか。
|
Key | カラムがソートキーとして使用されているかどうか。
|
Default | カラムのデータ型のデフォルト値。データ型にデフォルト値がない場合、NULL が返されます。 |
Extra |
|
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 は
Field
、Type
、Null
の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)