Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применяется к: Databricks SQL
Databricks Runtime
Изменяет метаданные, связанные с представлением. Эта инструкция может изменить определение представления, изменить имя представления, установить или удалить метаданные представления, изменяя TBLPROPERTIES
.
Чтобы добавить или изменить комментарий к представлению или его столбцам, используйте COMMENT ON.
Если представление кэшируется, команда очищает кэшированные данные представления и все его зависимые сущности, которые на него ссылаются. Кэш представления будет лениво заполнен при следующем доступе к представлению. Команда оставляет зависимые от представления некэшированными.
Синтаксис
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
Параметры
-
Определяет представление, которое нужно изменить. Если представление или таблицу не удается найти, Azure Databricks вызывает ошибку TABLE_OR_VIEW_NOT_FOUND.
ПЕРЕИМЕНОВАТЬ В to_view_name
Переименовывает существующее представление в
to_view_name
.Для представлений в Unity Catalog
to_view_name
должен находиться в том же каталоге, что иview_name
. Для других представлений,to_view_name
должен быть в той же схеме, что иview_name
.Если
to_view_name
не квалифицирован, он неявно квалифицируется по текущей схеме.Материализованные представления нельзя переименовать.
Задает или сбрасывает одно или несколько свойств, определяемых пользователем.
-
Удаляет одно или несколько свойств, определяемых пользователем.
AS ЗАПРОС
Запрос, который создает представление из базовых таблиц или других представлений.
AS query
не поддерживается для представлений метрик.Это предложение эквивалентно инструкции CREATE OR REPLACE VIEW в существующем представлении, за исключением того, что права, предоставленные в представлении, сохраняются.
AS yaml_definition
Применяется к:
Databricks SQL
Databricks Runtime 16.4 и выше
.
yaml_определение для представления метрик.
Это предложение эквивалентно инструкции CREATE OR REPLACE VIEW в существующем представлении, за исключением того, что права, предоставленные в представлении, сохраняются.
-
Применяется для:
Databricks SQL
Databricks Runtime 15.3 и выше
Указывает, как последующий запрос представления адаптируется к изменениям схемы представления из-за изменений в определениях базовых объектов. См. CREATE VIEW… SCHEMA для получения сведений о режимах привязки схемы.
Эта клауза не поддерживается для видов метрик.
[ SET ] ВЛАДЕЛЕЦ К principal
Передает права владения представлением субъекту
principal
. Если представление не определено вhive_metastore
, вы можете передавать права владения только группам, к которым вы принадлежите.Область применения:
Databricks SQL
Databricks Runtime 11.3 LTS и выше
SET
разрешено в качестве необязательного ключевого слова.SET TAGS ( { tag_name = tag_value } [, ...] )
Примените теги к представлению. Необходимо иметь
APPLY TAG
разрешение на добавление тегов в представление.Применяется к:
Databricks SQL
Databricks Runtime 13.3 LTS и выше
UNSET TAGS ( tag_name [, ...] )
Удалите теги из таблицы. Необходимо иметь
APPLY TAG
разрешение на удаление тегов из представления.Применяется к:
Databricks SQL
Databricks Runtime 13.3 LTS и выше
tag_name
Литерал
STRING
. Онtag_name
должен быть уникальным в представлении.tag_value
Литерал
STRING
.
Примеры
-- 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 `[email protected]`
-- 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 [email protected]
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']