Impala views
Views are lightweight logical constructs that act as aliases for queries. You can
specify a view name in a query (a SELECT
statement or the
SELECT
portion of an INSERT
statement) where you would
usually specify a table name.
A view lets you to:
- Issue complicated reporting queries with compact and simple syntax:
- Reduce maintenance by avoiding the duplication of complicated
queries across multiple applications in multiple languages:
CREATE VIEW v2 AS SELECT t1.c1, t1.c2, t2.c3 FROM t1 JOIN t2 ON (t1.id = t2.id); -- This simple query is safer to embed in reporting applications than the longer query above. -- The view definition can remain stable even if the structure of the underlying tables changes. SELECT c1, c2, c3 FROM v2;
- Build a new, more refined query on top of the original query by adding new clauses, select-list expressions, function calls, and so on: This technique lets you build up several more or less granular variations of the same query, and switch between them when appropriate.
- Set up aliases with intuitive names for tables, columns and result sets from joins.
- Avoid coding lengthy subqueries and repeating the same subquery text in many other queries.
To create, alter, or drop views, use the CREATE VIEW
,
the ALTER VIEW
, and the DROP VIEW
statements respectively.
You cannot insert into views.
To see the definition of a view, issue a DESCRIBE
FORMATTED
statement, which shows the query from the original
CREATE VIEW
statement