Lakeflow 宣言型パイプラインの SQL クエリの結果セットに基づいて、物理データのない仮想テーブルを構築します。
構文
SQL を使用してビューを宣言するための構文を次に示します。
CREATE VIEW view_name
[ COMMENT view_comment ]
[ TBLPROPERTIES ]
AS query
パラメーター
view_name
ビューの名前。 名前は、パイプラインの対象となるカタログとスキーマ内で一意である必要があります。
view_comment
ビューの説明 (省略可能)。
TBLPROPERTIES
テーブルのテーブル プロパティのリスト (省略可能)。
クエリ
ベース テーブルまたはその他のビューからビューを構築するクエリです。
必要なアクセス許可
ビューを作成するには、パイプラインの実行ユーザーに次のアクセス許可が必要です。
- SELECT ビューによって参照されるベース テーブルに対する特権。
- 親カタログに対する USE CATALOG 権限と親スキーマに対する USE SCHEMA 権限。
- CREATE TABLE ビューに関連するスキーマに対する特権。
ユーザーがパイプライン内でビューを更新できるようにするには、次のアクセス許可が必要です。
- 親カタログに対する USE CATALOG 権限と親スキーマに対する USE SCHEMA 権限。
- ビューの管理権限。
- SELECT ビューによって参照されるベース テーブルに対する権限。
ユーザーが結果のビューに対してクエリを実行できるようにするには、次のアクセス許可が必要です。
- 親カタログに対する USE CATALOG 権限と親スキーマに対する USE SCHEMA 権限。
- SELECT ビューに対するアクセス権。
制限事項
-
CREATE VIEW
は、既定の発行モードをサポートするパイプラインでのみ使用できます。 LIVE スキーマ (レガシ) を使用するパイプラインはサポートされていません。 詳細については、 LIVE スキーマ (レガシ) を参照してください。 - パイプラインは Unity カタログ パイプラインである必要があります。
-
CONSTRAINT
句の形式での期待はサポートされていません。 - ビューにストリーミング クエリを含めたり、ストリーミング ソースとして使用したりすることはできません。
例示
-- Create a view from an external data source
CREATE VIEW taxi_raw AS SELECT *
FROM read_files("/databricks-datasets/nyctaxi/sample/json/");
-- Use a view to create a filtered view:
CREATE VIEW taxi_silver AS SELECT *
FROM taxi_raw
WHERE distance > 0.0;