Tous les produits
Search
Centre de documentation

MaxCompute:CREATE VIEW

Dernière mise à jour :Aug 20, 2026

Crée une vue ou met à jour une vue existante à partir d'une instruction de requête.

Limites

  • Une vue peut référencer d'autres vues, mais ne peut pas se référencer elle-même. Les références circulaires ne sont pas prises en charge.

  • L'écriture de données dans une vue n'est pas autorisée. Par exemple, les instructions INSERT INTO et INSERT OVERWRITE ne peuvent pas être exécutées sur une vue.

Syntaxe

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

Paramètres

Paramètre Obligatoire Description
or replace Non Ce paramètre est requis pour mettre à jour une vue.
if not exists Non Si vous exécutez l'instruction CREATE VIEW pour créer une vue qui existe déjà sans spécifier IF NOT EXISTS, une exception est renvoyée. Dans ce cas, vous pouvez exécuter l'instruction CREATE OR REPLACE VIEW pour recréer la vue. Les permissions sur la vue restent inchangées après sa recréation.
view_name Oui Le nom de la vue que vous souhaitez créer ou mettre à jour.
col_name Oui Les noms des colonnes de la vue que vous souhaitez créer.
col_comment Non Les commentaires des colonnes de la vue que vous souhaitez créer.
view_comment Non Le commentaire de la vue que vous souhaitez créer.
select_statement Oui La clause SELECT qui fournit la source de données de la vue. Vous devez disposer des permissions de lecture sur la table référencée par la vue. Une vue ne peut contenir qu'une seule instruction SELECT valide.
Remarque

Après la création ou la mise à jour d'une vue, celle-ci peut devenir inaccessible si la table référencée est modifiée, par exemple si elle est supprimée. Vous devez maintenir les correspondances entre les tables référencées et les vues.

Exemples

  • Exemple 1 : Créez la vue sale_detail_view à partir de la table 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;
  • Exemple 2 : Mettez à jour la vue sale_detail_view à partir de la table 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;

Instructions associées

  • ALTER VIEW : Modifie le nom ou le propriétaire d'une vue existante.

  • DESC VIEW : Consulte les informations relatives à une vue existante.

  • DROP VIEW : Supprime une vue existante.