メインコンテンツまでスキップ
メインコンテンツまでスキップ

INFORMATION_SCHEMA

INFORMATION_SCHEMA (または: information_schema)は、データベースオブジェクトのメタデータに対する(いくぶん)標準化された、DBMS非依存ビューを提供するシステムデータベースです。INFORMATION_SCHEMA におけるビューは通常のシステムテーブルより劣りますが、ツールはそれらを使用して、DBMSを横断する基本情報を取得できます。INFORMATION_SCHEMA のビューの構造と内容は、後方互換性のある方法で進化することが期待されており、つまり、新しい機能だけが追加され、既存の機能は変更または削除されないということです。内部実装に関しては、INFORMATION_SCHEMAのビューは通常、system.columnssystem.databases、およびsystem.tablesのような通常のシステムテーブルにマップされます。

INFORMATION_SCHEMA には以下のビューが含まれています:

互換性のために、ケースインセンシティブの等価ビュー、例えば INFORMATION_SCHEMA.columns が提供されています。これと同様に、これらのビューにあるすべてのカラムにも - 小文字(例えば table_name)と大文字(TABLE_NAME)の両方のバリアントが提供されています。

COLUMNS

system.columns システムテーブルから読み取ったカラムと、ClickHouseでサポートされていないか、意味を持たないカラム(常に NULL)を含みますが、標準では必要です。

カラム:

  • table_catalog (String) — テーブルが存在するデータベースの名前。
  • table_schema (String) — テーブルが存在するデータベースの名前。
  • table_name (String) — テーブル名。
  • column_name (String) — カラム名。
  • ordinal_position (UInt64) — テーブル内でのカラムの順序位置、1から始まります。
  • column_default (String) — デフォルト値のための式、または未定義の場合は空の文字列。
  • is_nullable (UInt8) — カラムタイプが Nullable かどうかを示すフラグ。
  • data_type (String) — カラムタイプ。
  • character_maximum_length (Nullable(UInt64)) — バイナリデータ、キャラクターデータ、またはテキストデータ及び画像の最大バイト長。ClickHouseでは、FixedString データタイプのみに意味があります。それ以外の場合は NULL 値が返されます。
  • character_octet_length (Nullable(UInt64)) — バイナリデータ、キャラクターデータ、またはテキストデータ及び画像の最大バイト長。ClickHouseでは、FixedString データタイプのみに意味があります。それ以外の場合は NULL 値が返されます。
  • numeric_precision (Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または貨幣データの精度。ClickHouseでは、整数タイプの場合はビット幅、Decimal タイプの場合は小数精度です。それ以外の場合は NULL 値が返されます。
  • numeric_precision_radix (Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または貨幣データの精度の数体系の基数。ClickHouseでは、整数タイプの場合は2、Decimal タイプの場合は10です。それ以外の場合は NULL 値が返されます。
  • numeric_scale (Nullable(UInt64)) — おおよその数値データ、正確な数値データ、整数データ、または貨幣データのスケール。ClickHouseでは、Decimal タイプのみの意味があります。それ以外の場合は NULL 値が返されます。
  • datetime_precision (Nullable(UInt64)) — DateTime64 データ型の小数精度。その他のデータ型については NULL 値が返されます。
  • character_set_catalog (Nullable(String)) — NULL、サポートされていません。
  • character_set_schema (Nullable(String)) — NULL、サポートされていません。
  • character_set_name (Nullable(String)) — NULL、サポートされていません。
  • collation_catalog (Nullable(String)) — NULL、サポートされていません。
  • collation_schema (Nullable(String)) — NULL、サポートされていません。
  • collation_name (Nullable(String)) — NULL、サポートされていません。
  • domain_catalog (Nullable(String)) — NULL、サポートされていません。
  • domain_schema (Nullable(String)) — NULL、サポートされていません。
  • domain_name (Nullable(String)) — NULL、サポートされていません。
  • extra (Nullable(String)) — MATERIALIZED型カラムの場合は STORED GENERATEDALIAS型カラムの場合は VIRTUAL GENERATEDDEFAULT型カラムの場合は DEFAULT_GENERATED、または NULL

クエリ:

結果:

SCHEMATA

system.databases システムテーブルから読み取ったカラムと、ClickHouseでサポートされていないか、意味を持たないカラム(常に NULL)を含みますが、標準では必要です。

カラム:

  • catalog_name (String) — データベースの名前。
  • schema_name (String) — データベースの名前。
  • schema_owner (String) — スキーマ所有者の名前、常に 'default'
  • default_character_set_catalog (Nullable(String)) — NULL、サポートされていません。
  • default_character_set_schema (Nullable(String)) — NULL、サポートされていません。
  • default_character_set_name (Nullable(String)) — NULL、サポートされていません。
  • sql_path (Nullable(String)) — NULL、サポートされていません。

クエリ:

結果:

TABLES

system.tables システムテーブルから読み取ったカラムを含みます。

カラム:

  • table_catalog (String) — テーブルが存在するデータベースの名前。
  • table_schema (String) — テーブルが存在するデータベースの名前。
  • table_name (String) — テーブル名。
  • table_type (String) — テーブルタイプ。可能な値:
    • BASE TABLE
    • VIEW
    • FOREIGN TABLE
    • LOCAL TEMPORARY
    • SYSTEM VIEW
  • table_rows (Nullable(UInt64)) — 行の総数。確認できなかった場合はNULL。
  • data_length (Nullable(UInt64)) — ディスク上のデータのサイズ。確認できなかった場合はNULL。
  • table_collation (Nullable(String)) — テーブルのデフォルト照合順序。常に utf8mb4_0900_ai_ci
  • table_comment (Nullable(String)) — テーブル作成時に使用されるコメント。

クエリ:

結果:

VIEWS

View テーブルエンジンが使用される場合に、system.tables システムテーブルから読み取ったカラムを含みます。

カラム:

  • table_catalog (String) — テーブルが存在するデータベースの名前。
  • table_schema (String) — テーブルが存在するデータベースの名前。
  • table_name (String) — テーブル名。
  • view_definition (String) — ビューのための SELECT クエリ。
  • check_option (String) — NONE、チェックなし。
  • is_updatable (Enum8) — NO、ビューは更新されません。
  • is_insertable_into (Enum8) — 作成されたビューがマテリアライズドかどうかを示します。可能な値:
    • NO — 作成されたビューはマテリアライズされていません。
    • YES — 作成されたビューはマテリアライズされています。
  • is_trigger_updatable (Enum8) — NO、トリガーは更新されません。
  • is_trigger_deletable (Enum8) — NO、トリガーは削除されません。
  • is_trigger_insertable_into (Enum8) — NO、データはトリガーに挿入されません。

クエリ:

結果:

KEY_COLUMN_USAGE

制約によって制限されたsystem.tables システムテーブルからのカラムを含みます。

カラム:

  • constraint_catalog (String) — 現在使用されていません。常に def
  • constraint_schema (String) — 制約に属するスキーマ(データベース)の名前。
  • constraint_name (Nullable(String)) — 制約の名前。
  • table_catalog (String) — 現在使用されていません。常に def
  • table_schema (String) — テーブルが属するスキーマ(データベース)の名前。
  • table_name (String) — 制約を持つテーブルの名前。
  • column_name (Nullable(String)) — 制約を持つカラムの名前。
  • ordinal_position (UInt32) — 現在使用されていません。常に 1
  • position_in_unique_constraint (Nullable(UInt32)) — 現在使用されていません。常に NULL
  • referenced_table_schema (Nullable(String)) — 現在使用されていません。常に NULL
  • referenced_table_name (Nullable(String)) — 現在使用されていません。常に NULL
  • referenced_column_name (Nullable(String)) — 現在使用されていません。常に NULL

結果:

REFERENTIAL_CONSTRAINTS

外部キーに関する情報を含みます。現在は空の結果(行なし)を返し、これはTableau Onlineのようなサードパーティツールとの互換性を提供するために十分です。

カラム:

  • constraint_catalog (String) — 現在使用されていません。
  • constraint_schema (String) — 現在使用されていません。
  • constraint_name (Nullable(String)) — 現在使用されていません。
  • unique_constraint_catalog (String) — 現在使用されていません。
  • unique_constraint_schema (String) — 現在使用されていません。
  • unique_constraint_name (Nullable(String)) — 現在使用されていません。
  • match_option (String) — 現在使用されていません。
  • update_rule (String) — 現在使用されていません。
  • delete_rule (String) — 現在使用されていません。
  • table_name (String) — 現在使用されていません。
  • referenced_table_name (String) — 現在使用されていません。

STATISTICS

テーブルインデックスに関する情報を提供します。現在は空の結果(行なし)を返し、これはTableau Onlineのようなサードパーティツールとの互換性を提供するために十分です。

カラム:

  • table_catalog (String) — 現在使用されていません。
  • table_schema (String) — 現在使用されていません。
  • table_name (String) — 現在使用されていません。
  • non_unique (Int32) — 現在使用されていません。
  • index_schema (String) — 現在使用されていません。
  • index_name (Nullable(String)) — 現在使用されていません。
  • seq_in_index (UInt32) — 現在使用されていません。
  • column_name (Nullable(String)) — 現在使用されていません。
  • collation (Nullable(String)) — 現在使用されていません。
  • cardinality (Nullable(Int64)) — 現在使用されていません。
  • sub_part (Nullable(Int64)) — 現在使用されていません。
  • packed (Nullable(String)) — 現在使用されていません。
  • nullable (String) — 現在使用されていません。
  • index_type (String) — 現在使用されていません。
  • comment (String) — 現在使用されていません。
  • index_comment (String) — 現在使用されていません。
  • is_visible (String) — 現在使用されていません。
  • expression (Nullable(String)) — 現在使用されていません。