📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

CREATE VIEW



クエリに基づいて新しいビューを作成します。Logical View は物理データを保存せず、論理ビューにアクセスすると、処理を完了するために SQL をサブクエリ形式に変換します。

たとえば、次のような Logical View を作成したとします。

CREATE VIEW view_t1 AS SELECT a, b FROM t1;

そして、次のようなクエリを実行するとします。

SELECT a FROM view_t1;

その結果は、次のクエリと同じです。

SELECT a FROM (SELECT a, b FROM t1);

そのため、ビューが依存しているテーブルを削除すると、元のテーブルが存在しないというエラーが発生します。この場合は、古いビューを削除し、必要な新しいビューを再作成する必要があることがあります。

構文

CREATE [ OR REPLACE ] VIEW [ IF NOT EXISTS ] [ db. ]view_name [ (<column>, ...) ] AS SELECT query

アクセス制御の要件

ビューにアクセスするには、ユーザーはビュー自体に対する SELECT 権限のみが必要です。

ビューの基になるテーブルに対して個別の権限は必要ありません。この仕組みにより、アクセス制御が簡素化され、データセキュリティが向上します。

例

CREATE VIEW tmp_view(c1, c2) AS SELECT number % 3 AS a, avg(number) FROM numbers(1000) GROUP BY a ORDER BY a; SELECT * FROM tmp_view; +------+-------+ | c1 | c2 | +------+-------+ | 0 | 499.5 | | 1 | 499.0 | | 2 | 500.0 | +------+-------+

このページは役に立ちましたか?