×

impala 教程

impala 概述impala 环境impala 架构impala Shellimpala 查询语言基础

数据库特定语句

impala 创建数据库impala 删除数据库impala 选择数据库

Table 特定语句

impala CREATE TABLE语句impala Insert语句impala Select语句impala Describe语句impala ALTER TABLEimpala 删除表impala 截断表impala 显示表impala 创建视图impala ALTER VIEWimpala 删除视图

impala 条款

impala ORDER BY子句impala GROUP BY子句impala having子句impala 限制条款impala 偏移条款impala Union条款impala with子句impala DISTINCT运算符

impala 相关资源

impala 相关资源impala 相关讨论

impala 创建视图


视图仅仅是存储在数据库中具有关联名称的Impala查询语言的语句。 它是以预定义的SQL查询形式的表的组合。

视图可以包含表的所有行或选定的行。 可以从一个或多个表创建视图。 视图允许用户 - 

  • 以用户或用户类发现自然或直观的方式结构化数据。

  • 限制对数据的访问,以便用户可以看到和(有时)完全修改他们需要的内容,而不再更改。

  • 汇总可用于生成报告的各种表中的数据。

您可以使用Impala的Create View语句创建视图。

语法

以下是create view语句的语法。 IF NOT EXISTS是一个可选的子句。 如果使用此子句,则只有在指定数据库中没有具有相同名称的现有表时,才会创建具有给定名称的表。

Create View IF NOT EXISTS view_name as Select statement

例如,假设在Impala中的my_db数据库中有一个名为customers的表,其中包含以下数据。

ID  NAME      AGE   ADDRESS     SALARY
--- --------- ----- ----------- --------
1   Ramesh    32    Ahmedabad   20000
2   Khilan    25    Delhi       15000
3   Hardik    27    Bhopal      40000
4   Chaitali  25    Mumbai      35000
5   kaushik   23    Kota        30000
6   Komal     22    MP          32000

以下是Create View语句的示例。 在此示例中,我们创建一个视图为customers表,其中包含列,名称和年龄。

[quickstart.cloudera:21000] > CREATE VIEW IF NOT EXISTS customers_view AS 
select name, age from customers;

执行上述查询时,将创建具有所需列的视图,并显示以下消息。

Query: create VIEW IF NOT EXISTS sample AS select * from customers 
Fetched 0 row(s) in 0.33s

验证

您可以使用select语句验证刚创建的视图的内容,如下所示。

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

这将产生以下结果。

Query: select * from customers_view 
+----------+-----+ 
| name     | age | 
+----------+-----+ 
| Komal    | 22  | 
| Khilan   | 25  | 
| Ramesh   | 32  | 
| Hardik   | 27  | 
| Chaitali | 25  | 
| kaushik  | 23  | 
+----------+-----+ 
Fetched 6 row(s) in 4.80s

使用Hue创建视图

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

创建视图

执行查询后,如果向下滚动,您可以看到在表列表中创建的名为sample的视图,如下所示。

创建视图和样本

分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)