メインコンテンツまでスキップ
バージョン: 26.x

CREATE VIEW

説明

この文は、指定されたクエリ文を使用して論理ビューを作成するために使用されます。

構文

CREATE VIEW [IF NOT EXISTS] [<db_name>.]<view_name>
[(<column_definition>)]
[AS] <query_stmt>

ここで:

column_definition:
<column_name> [COMMENT '<comment>'] [,...]

必須パラメータ

1. <view_name>

ビューの識別子(つまり、名前)。ビューが作成されるデータベース内で一意である必要があります。
識別子は文字から始まる必要があり(Unicode名前サポートが有効な場合、任意の言語の文字を使用可能)、識別子文字列全体がバッククォートで囲まれていない限り(例:My View)、スペースや特殊文字を含むことはできません。
識別子は予約キーワードを使用できません。
詳細については、識別子の要件と予約キーワードを参照してください。

2. <query_stmt>

ビューを定義するSELECTクエリステートメント。

オプションパラメータ

1. <db_name>

ビューが存在するデータベースの名前。指定されていない場合、デフォルトで現在のデータベースが使用されます。

2. <column_definition>

ビューの列定義。
詳細:
1. <column_name>
列名。
2. <comment>
列のコメント。

アクセス制御要件

権限オブジェクト備考
CREATE_PRIVDatabaseデータベースに対するCREATE_PRIV権限が必要です。
SELECT_PRIVTable, ViewクエリされるTable、ビュー、またはマテリアライズドビューに対するSELECT_PRIV権限が必要です。

注意事項

  • ビューは論理的なものであり、物理的なストレージを持ちません。ビューに対するすべてのクエリは、対応するサブクエリに対するクエリと同等です。
  • ビューの作成と削除は、基底Tableのデータに影響しません。

  1. example_db上でビューexample_viewを作成

    CREATE VIEW example_db.example_view (k1, k2, k3, v1)
    AS
    SELECT c1 as k1, k2, k3, SUM(v1) FROM example_table
    WHERE k1 = 20160112 GROUP BY k1,k2,k3;
  2. 列定義を含むビューを作成する

    CREATE VIEW example_db.example_view
    (
    k1 COMMENT "first key",
    k2 COMMENT "second key",
    k3 COMMENT "third key",
    v1 COMMENT "first value"
    )
    COMMENT "my first view"
    AS
    SELECT c1 as k1, k2, k3, SUM(v1) FROM example_table
    WHERE k1 = 20160112 GROUP BY k1,k2,k3;