Impala - 修改视图



Impala 的**ALTER VIEW** 语句用于修改视图。使用此语句,您可以更改视图的名称、数据库以及与其关联的查询。

由于**视图**是逻辑结构,因此**ALTER VIEW** 查询不会影响任何物理数据。

语法

以下是**ALTER VIEW** 语句的语法

ALTER VIEW database_name.view_name as Select statement

示例

例如,假设我们在 Impala 的**my_db** 数据库中有一个名为**customers_view** 的视图,其内容如下。

+----------+-----+ 
| name     | age | 
+----------+-----+ 
| Komal    | 22  | 
| Khilan   | 25  | 
| Ramesh   | 32  | 
| Hardik   | 27  | 
| Chaitali | 25  | 
| kaushik  | 23  | 
+----------+-----+

以下是一个**ALTER VIEW 语句**的示例。在此示例中,我们将 id、name 和 salary 列添加到**customers_view**,而不是 name 和 age。

[quickstart.cloudera:21000] > Alter view customers_view as select id, name, 
salary from customers;

执行上述查询后,Impala 将对**customers_view** 进行指定的更改,并显示以下消息。

Query: alter view customers_view as select id, name, salary from customers

验证

您可以使用如下所示的**SELECT** 语句验证名为**customers_view** 的**视图**的内容。

[quickstart.cloudera:21000] > select * from customers_view;
Query: select * from customers_view

这将产生以下结果。

+----+----------+--------+ 
| id | name     | salary | 
+----+----------+--------+
| 3  | kaushik  | 30000  | 
| 2  | Khilan   | 15000  | 
| 5  | Hardik   | 40000  | 
| 6  | Komal    | 32000  | 
| 1  | Ramesh   | 20000  | 
| 4  | Chaitali | 35000  | 
+----+----------+--------+ 
Fetched 6 row(s) in 0.69s

使用 Hue 修改视图

打开 Impala 查询编辑器,选择上下文为**my_db**,在其中键入**ALTER VIEW** 语句,然后单击执行按钮,如下面的屏幕截图所示。

Altering a View

执行查询后,名为**sample** 的**视图**将相应地被修改。

广告