All Products
Search
Document Center

MaxCompute:CREATE VIEW

Last Updated:Aug 21, 2026

Membuat atau memperbarui view yang sudah ada berdasarkan pernyataan kueri.

Batasan

  • View dapat mereferensikan view lain, tetapi tidak dapat mereferensikan dirinya sendiri. Referensi melingkar tidak didukung.
  • Anda tidak dapat menulis data ke dalam view. Misalnya, pernyataan INSERT INTO atau INSERT OVERWRITE tidak dapat dijalankan pada view.

Sintaksis

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

Parameter

ParameterWajibDeskripsi
or replaceTidakParameter ini diperlukan ketika Anda ingin memperbarui view.
if not existsTidakJika Anda menjalankan pernyataan CREATE VIEW untuk membuat view yang sudah ada tanpa menentukan IF NOT EXISTS, maka akan dikembalikan pengecualian. Dalam kasus ini, Anda dapat menjalankan pernyataan CREATE OR REPLACE VIEW untuk membuat ulang view tersebut. Izin pada view tetap tidak berubah setelah view dibuat ulang.
view_nameYaNama view yang ingin Anda buat atau perbarui.
col_nameYaNama kolom dalam view yang ingin Anda buat.
col_commentTidakKomentar untuk kolom dalam view yang ingin Anda buat.
view_commentTidakKomentar untuk view yang ingin Anda buat.
select_statementYaKlausa SELECT yang menyediakan sumber data untuk view. Anda harus memiliki izin baca pada tabel yang direferensikan oleh view tersebut. View hanya boleh berisi satu pernyataan SELECT yang valid.
Catatan Setelah view dibuat atau diperbarui, view tersebut mungkin menjadi tidak dapat diakses jika tabel yang direferensikannya diubah—misalnya, jika tabel tersebut dihapus. Anda harus memastikan pemetaan antara tabel yang direferensikan dan view tetap terjaga.

Contoh

  • Contoh 1: Membuat view sale_detail_view berdasarkan tabel sale_detail.
    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;
  • Contoh 2: Memperbarui view sale_detail_view berdasarkan tabel sale_detail.
    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;

Pernyataan terkait

  • ALTER VIEW: Mengubah nama atau pemilik view yang sudah ada.
  • DESC VIEW: Menampilkan informasi mengenai view yang sudah ada.
  • DROP VIEW: Menghapus view yang sudah ada.