Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
S’applique à :
Databricks SQL
Databricks Runtime
Modifie les métadonnées associées à l’affichage. La commande peut modifier la définition de l’affichage, changer son nom, ainsi qu’en définir et annuler les métadonnées en définissant TBLPROPERTIES.
Pour ajouter ou modifier un commentaire sur une vue, utilisez COMMENT ON.
Si l’affichage est mis en cache, la commande efface les données mises en cache de l’affichage et de tous les éléments dépendants qui y font référence. Le cache de l’affichage est rempli de manière différée lorsque l’affichage est accessible la prochaine fois. La commande laisse les dépendants de l’affichage comme non mis en cache.
Syntaxe
ALTER VIEW view_name
{ rename |
SET TBLPROPERTIES clause |
UNSET TBLPROPERTIES clause |
alter_body |
schema_binding |
owner_to |
SET TAGS clause |
UNSET TAGS clause }
rename
RENAME TO to_view_name
alter_body
AS { query | yaml_definition }
yaml_definition
$$
yaml_string
$$
schema_binding
WITH SCHEMA { BINDING | [ TYPE ] EVOLUTION | COMPENSATION }
property_key
{ idenitifier [. ...] | string_literal }
owner_to
[ SET ] OWNER TO principal
Paramètres
-
Identifie l’affichage à modifier. Si la vue est introuvable, Azure Databricks génère une erreur de TABLE_OR_VIEW_NOT_FOUND .
RENOMMER EN to_view_name
Renomme l’affichage existant en
to_view_name.Pour les vues Unity Catalog, le
to_view_namedoit se trouver dans le même catalogue queview_name. Pour les autres vues, leto_view_namedoit se trouver dans le même schéma queview_name.Si
to_view_namen'est pas qualifié, il est implicitement qualifié avec le schéma actuel.Les vues matérialisées ne peuvent pas être renommées.
Définit ou redéfinit une ou plusieurs propriétés définies par l’utilisateur.
-
Supprime une ou plusieurs propriétés définies par l’utilisateur.
AS Requête
Requête qui construit l’affichage à partir de tables de base ou d’autres affichages.
AS queryn’est pas pris en charge pour les vues métriques.Cette clause équivaut à une instruction CREATE OR REPLACE VIEW sur une vue existante, sauf que les privilèges accordés sur la vue sont conservés.
AS yaml_definition
S’applique à :
Databricks SQL
Databricks Runtime 16.4 et versions ultérieures
Unity Catalog uniquementUn yaml_definition pour une vue métrique.
Cette clause équivaut à une instruction CREATE OR REPLACE VIEW sur une vue existante, sauf que les privilèges accordés sur la vue sont conservés.
-
S’applique à :
Databricks SQL
Databricks Runtime 15.3 et versions ultérieuresSpécifie comment l’interrogation ultérieure de la vue s’adapte aux modifications apportées au schéma de la vue en raison des modifications apportées aux définitions d’objets sous-jacentes. Pour plus de détails sur les modes de liaison des schémas, consultez CREATE VIEW... WITH SCHEMA.
Cette clause n'est pas prise en charge pour les vues métriques.
[ SET ] PROPRIÉTAIRE À principal
Transfère la propriété de l’affichage à
principal. Si l’affichage n’est pas défini dans lehive_metastore, vous pouvez transférer la propriété uniquement à un groupe auquel vous appartenez.S’applique à :
Databricks SQL
Databricks Runtime 11.3 LTS et versions ultérieuresSETest autorisé en tant que mot clé facultatif.SET TAGS ( { tag_name = tag_value } [, ...] )
Appliquez des balises à la vue. Vous devez avoir l'autorisation
APPLY TAGd'ajouter des balises à la vue.S’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et versions ultérieuresBALISES UNSET ( tag_name [, ...] )
Supprimer des balises de la table. Vous devez avoir l'autorisation
APPLY TAGde supprimer des balises de la vue.S’applique à :
Databricks SQL
Databricks Runtime 13.3 LTS et versions ultérieurestag_name
Un
STRINGlittéral. Letag_namedoit être unique dans la vue.tag_value
Un
STRINGlittéral.
Exemples
-- Rename only changes the view name.
-- The source and target schemas of the view have to be the same.
-- Use qualified or unqualified name for the source and target view.
> ALTER VIEW tempsc1.v1 RENAME TO tempsc1.v2;
-- Verify that the new view is created.
> DESCRIBE TABLE EXTENDED tempsc1.v2;
c1 int NULL
c2 string NULL
# Detailed Table Information
Database tempsc1
Table v2
-- Before ALTER VIEW SET TBLPROPERTIES
> DESCRIBE TABLE EXTENDED tempsc1.v2;
c1 int null
c2 string null
# Detailed Table Information
Database tempsc1
Table v2
Table Properties [....]
-- Set properties in TBLPROPERTIES
> ALTER VIEW tempsc1.v2 SET TBLPROPERTIES ('created.by.user' = "John", 'created.date' = '01-01-2001' );
-- Use `DESCRIBE TABLE EXTENDED tempsc1.v2` to verify
> DESCRIBE TABLE EXTENDED tempsc1.v2;
c1 int NULL
c2 string NULL
# Detailed Table Information
Database tempsc1
Table v2
Table Properties [created.by.user=John, created.date=01-01-2001, ....]
-- Remove the key created.by.user and created.date from `TBLPROPERTIES`
> ALTER VIEW tempsc1.v2 UNSET TBLPROPERTIES (`created`.`by`.`user`, created.date);
-- Use `DESCRIBE TABLE EXTENDED tempsc1.v2` to verify the changes
> DESCRIBE TABLE EXTENDED tempsc1.v2;
c1 int NULL
c2 string NULL
# Detailed Table Information
Database tempsc1
Table v2
Table Properties [....]
-- Change the view definition
> ALTER VIEW tempsc1.v2 AS SELECT * FROM tempsc1.v1;
-- Use `DESCRIBE TABLE EXTENDED` to verify
> DESCRIBE TABLE EXTENDED tempsc1.v2;
c1 int NULL
c2 string NULL
# Detailed Table Information
Database tempsc1
Table v2
Type VIEW
View Text select * from tempsc1.v1
View Original Text select * from tempsc1.v1
-- Transfer ownership of a view to another user
> ALTER VIEW v1 OWNER TO `alf@melmak.et`
-- Change the view schema binding to adopt type evolution
> ALTER VIEW v1 WITH SCHEMA TYPE EVOLUTION;
-- Applies three tags to the view named `test`.
> ALTER VIEW test SET TAGS ('tag1' = 'val1', 'tag2' = 'val2', 'tag3' = 'val3');
-- Removes three tags from the view named `test`.
> ALTER VIEW test UNSET TAGS ('tag1', 'tag2', 'tag3');
-- Alter a the metric view `region_sales_metrics` defined in CREATE VIEW to drop the `total_revenue_for_open_orders` measure.
> ALTER VIEW region_sales_metrics
AS $$
version: 0.1
source: samples.tpch.orders
filter: o_orderdate > '1990-01-01'
dimensions:
- name: month
expr: date_trunc('MONTH', o_orderdate)
- name: status
expr: case
when o_orderstatus = 'O' then 'Open'
when o_orderstatus = 'P' then 'Processing'
when o_orderstatus = 'F' then 'Fulfilled'
end
- name: order_priority
expr: split(o_orderpriority, '-')[1]
measures:
- name: count_orders
expr: count(1)
- name: total_revenue
expr: SUM(o_totalprice)
- name: total_revenue_per_customer
expr: SUM(o_totalprice) / count(distinct o_custkey)
$$;
> DESCRIBE EXTENDED region_sales_metrics;
col_name data_type
month timestamp
status string
prder_priority string
count_orders bigint measure
total_revenue decimal(28,2) measure
total_revenue_per_customer decimal(38,12) measure
# Detailed Table Information
Catalog main
Database default
Table region_sales_metrics
Owner alf@melmak.et
Created Time Sun May 18 23:45:25 UTC 2025
Last Access UNKNOWN
Created By Spark
Type METRIC_VIEW
Comment A metric view for regional sales metrics.
View Text "
version: 0.1
source: samples.tpch.orders
filter: o_orderdate > '1990-01-01'
dimensions:
- name: month
expr: date_trunc('MONTH', o_orderdate)
- name: status
expr: case
when o_orderstatus = 'O' then 'Open'
when o_orderstatus = 'P' then 'Processing'
when o_orderstatus = 'F' then 'Fulfilled'
end
- name: prder_priority
expr: split(o_orderpriority, '-')[1]
measures:
- name: count_orders
expr: count(1)
- name: total_revenue
expr: SUM(o_totalprice)
- name: total_revenue_per_customer
expr: SUM(o_totalprice) / count(distinct o_custkey)
"
Language YAML
Table Properties [metric_view.from.name=samples.tpch.orders, metric_view.from.type=ASSET, metric_view.where=o_orderdate > '1990-01-01']