すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:CREATE VIEW

最終更新日:Dec 12, 2024

クエリ文に基づいて、ビューを作成するか、既存のビューを更新します。

制限事項

  • ビューは他のビューを参照できますが、それ自体は参照できません。 循環参照には対応していません。

  • ビューにデータを書き込むことはできません。 たとえば、INSERT INTOまたはINSERT OVERWRITEはビューでは実行できません。

構文

create [or replace] view [if not exists] <view_name>
    [(<col_name> [comment <col_comment>], ...)]
    [comment <view_comment>]
    as <select_statement>;

パラメーター

パラメーター

必須

説明

or replace

選択可能

このパラメーターは、ビューを更新するときに必要です。

if not exists

選択可能

CREATE VIEWステートメントがIf not existsなしで実行され、作成するビューが既に存在する場合、エラーが返されます。 この場合、CREATE OR REPLACE VIEWステートメントを実行して、ビューを再作成できます。 ビューの権限は、ビューの再作成後も変更されません。

view_name

必須

作成または更新するビューの名前。

col_name

必須

作成するビュー内の列の名前。

col_コメント

選択可能

作成するビューの列のコメント。

view_comment

選択可能

作成するビューのコメント。

select_statement

必須

ビューのデータソースを提供するSELECT句。 ビューが参照するテーブルに対する読み取り権限が必要です。 ビューを作成または更新するときに、有効なSELECT句を1つだけ使用できます。

説明

ビューが作成または更新された後、参照テーブルが変更されると、ビューにアクセスできなくなる可能性があります。 例えば、参照されたテーブルは削除される。 参照テーブルとビュー間のマッピングを維持する必要があります。

  • 例1: sale_detailテーブルに基づいてsale_detail_viewビューを作成します。

    create view if not exists sale_detail_view
    (store_name, customer_id, price, sale_date, region)
    comment 'a view for table sale_detail'
    as select * from sale_detail;
  • 例2: sale_detailテーブルに基づいてsale_detail_viewビューを更新します。

    create or replace view if not exists sale_detail_view
    (store_name, customer_id, price)
    comment 'a view for table sale_detail'
    as select shop_name, customer_id, total_price from sale_detail;

関连するコマンド

  • ALTER VIEW: 既存のビューの名前を変更するか、既存のビューの所有者を変更します。

  • DESC VIEW: 既存のビューの情報を表示します。

  • DROP VIEW: 既存のビューを削除します。