CREATE VIEW
Synopsis
CREATE VIEW view AS SELECT query
Inputs
- view
The name of a view to be created.
- query
An SQL query which will provide the columns and rows of the view.
Refer to the SELECT statement for more information about valid arguments.
Outputs
- CREATE
The message returned if the view is successfully created.
- ERROR: Relation 'view' already exists
This error occurs if the view specified already exists in the database.
- NOTICE create: attribute named "column" has an unknown type
The view will be created having a column with an unknown type if you do not specify it. For example, the following command gives a warning:
CREATE VIEW vista AS SELECT 'Hello World'
whereas this command does not:CREATE VIEW vista AS SELECT text 'Hello World'
Description
CREATE VIEW will define a view of a table. This view is not physically materialized. Specifically, a query rewrite retrieve rule is automatically generated to support retrieve operations on views.
Usage
Create a view consisting of all Comedy films:
CREATE VIEW kinds AS
SELECT *
FROM films
WHERE kind = 'Comedy';
SELECT * FROM kinds;
code | title | did | date_prod | kind | len
-------+---------------------------+-----+------------+--------+-------
UA502 | Bananas | 105 | 1971-07-13 | Comedy | 01:22
C_701 | There's a Girl in my Soup | 107 | 1970-06-11 | Comedy | 01:36
(2 rows)
Compatibility
SQL92
SQL92 specifies some additional capabilities for the CREATE VIEW statement:
CREATE VIEW view [ column [, ...] ]
AS SELECT expression [ AS colname ] [, ...]
FROM table [ WHERE condition ]
[ WITH [ CASCADE | LOCAL ] CHECK OPTION ]
The optional clauses for the full SQL92 command are:
- CHECK OPTION
This option is to do with updatable views. All INSERTs and UPDATEs on the view will be checked to ensure data satisfy the view-defining condition. If they do not, the update will be rejected.
- LOCAL
Check for integrity on this view.
- CASCADE
Check for integrity on this view and on any dependent view. CASCADE is assumed if neither CASCADE nor LOCAL is specified.
Report a documentation issue
Read the upstream documentation. For corrections, first check the current manual.