CREATE VIEW¶

Applies to
  • Hive SQL

  • Spark SQL

  • Databricks SQL

Warning

This grammar is partially supported in Snowflake. Translation pending for these CREATE VIEW elements:

[ [ GLOBAL ] TEMPORARY ]
[ TBLPROPERTIES ( property_name = property_value [ , ... ] ) ]
Copy

Description¶

Views are based on the result-set of an SQL query. CREATE VIEW constructs a virtual table that has no physical data therefore other operations like ALTER VIEW and DROP VIEW only change metadata. (Spark SQL Language Reference CREATE VIEW)

Grammar Syntax ¶

CREATE [ OR REPLACE ] [ [ GLOBAL ] TEMPORARY ] VIEW [ IF NOT EXISTS ] view_identifier
    create_view_clauses AS query

create_view_clauses :=
[ ( column_name [ COMMENT column_comment ], ... ) ]
[ COMMENT view_comment ]
[ TBLPROPERTIES ( property_name = property_value [ , ... ] ) ]
Copy

Sample Source Patterns¶

COMMENT clause¶

Input Code:¶

CREATE VIEW my_view
COMMENT 'This view selects specific columns from person'
AS
SELECT 
   name,
   age,
   address
FROM
   person;
Copy

Output Code:¶

CREATE VIEW my_view
COMMENT = '{ "Description": "This view selects specific columns from person", "origin": "sf_sc", "name": "snowconvert", "version": {  "major": 0,  "minor": 0,  "patch": "0" }, "attributes": {  "component": "databricks",  "convertedOn": "07/11/2025",  "domain": "no-domain-provided" }}'
AS
SELECT
   name,
   age,
   address
FROM
   person;
Copy

OR REPLACE¶

Note

This clause is fully supported in Snowflake

TEMPORARY (non-GLOBAL) VIEW¶

Note

This clause is fully supported in Snowflake

IF NOT EXISTS¶

Note

This clause is fully supported in Snowflake

Columns list¶

Note

This clause is fully supported in Snowflake