CREATE VIEW
  
  SQL - Language Statements
 
 
  
   CREATE VIEW
  
  
   Constructs a virtual table
  
 
 
  
   1999-07-20
  
  
CREATE VIEW view AS SELECT query
  
  
   
    1998-09-21
   
   
    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.
       
      
     
    
   
  
  
   
    1998-09-21
   
   
    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
	an error:
	
CREATE VIEW vista AS SELECT 'Hello World'
	
	whereas this command does not:
	
CREATE VIEW vista AS SELECT 'Hello World'::text
	
       
      
     
    
   
  
 
 
  
   1998-09-21
  
  
   Description
  
  
   CREATE VIEW will define a view of a table or
   class. This view is not physically materialized. Specifically, a query
   rewrite retrieve rule is automatically generated to support
   retrieve operations on views.
  
  
   
    1998-09-21
   
   
    Notes
   
   
    Currently, views are read only.
   
   
    Use the DROP VIEW statement to drop 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
   
  
 
 
 
  
   Compatibility
  
  
  
   
    1998-09-21
   
   
    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.