記述する
説明
このステートメントは、指定されたテーブルのスキーマ情報を表示するために使用されます。
構文
DESC[RIBE] [<ctl_name>.][<db_name>.]<table_name> [ALL];
必須パラメータ
1.<table_name>
テーブルの識別子(つまり、名前)を指定します。これはデータベース内で一意である必要があります。
識別子は文字(またはUnicode名前サポートが有効な場合は任意の言語文字)で始まる必要があり、識別子文字列全体がバッククォートで囲まれていない限り(例:
My Object)、スペースや特殊文字を含むことはできません。識別子は予約キーワードを使用できません。
詳細については、識別子要件と予約キーワードを参照してください。
オプションパラメータ
1.<ctl_name>.<db_name>
データカタログとデータベースの識別子(つまり、名前)を指定します。
識別子は文字(またはUnicode名前サポートが有効な場合は任意の言語文字)で始まる必要があり、識別子文字列全体がバッククォートで囲まれていない限り(例:
My Database)、スペースや特殊文字を含むことはできません。識別子は予約キーワードを使用できません。
詳細については、識別子要件と予約キーワードを参照してください。
2.ALL
内部テーブルに対してのみ有効です。内部テーブルのすべてのIndex情報を返します。
戻り値
ALLが指定されていない場合、戻り値は次のとおりです:
| Column | Description |
|---|---|
| Field | カラム名 |
| Type | データ型 |
| Null | NULL値が許可されているかどうか |
| Key | キーカラムかどうか |
| Default | デフォルト値 |
| Extra | いくつかの追加情報を表示 |
バージョン3.0.7で、新しいセッション変数show_column_comment_in_describeが追加されました。trueに設定すると、カラムコメント情報を表示する追加のCommentカラムが追加されます。
ALLが指定された場合、内部テーブルに対して、戻り値は次のとおりです:
| Column | Description |
|---|---|
| IndexName | テーブル名 |
| IndexKeysType | テーブルモデル |
| Field | カラム名 |
| Type | データ型 |
| Null | NULL値が許可されているかどうか |
| Key | キーカラムかどうか |
| Default | デフォルト値 |
| Extra | いくつかの追加情報を表示 |
| Visible | 表示されているかどうか |
| DefineExpr | 定義式 |
| WhereClause | フィルタ条件関連の定義 |
権限制御
このSQLコマンドを実行するユーザーは、少なくとも次の権限を持っている必要があります:
| Permission (Privilege) | Object | Notes |
|---|---|---|
| SELECT_PRIV | Table | DESCを実行する際、クエリ対象のテーブルに対してSELECT_PRIV権限を持つ必要があります |
例
- Base Table Schemaの表示
DESC test_table;
+---------+-------------+------+-------+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-------+---------+-------+
| user_id | bigint | No | true | NULL | |
| name | varchar(20) | Yes | false | NULL | NONE |
| age | int | Yes | false | NULL | NONE |
+---------+-------------+------+-------+---------+-------+