CREATE VIEW
Vytvoří virtuální tabulku, která nemá žádná fyzická data na základě sady výsledků dotazu SQL. ALTER VIEW
a DROP VIEW
mění pouze metadata.
Syntaxe
CREATE [ OR REPLACE ] [ [ GLOBAL ] TEMPORARY ] VIEW [ IF NOT EXISTS ] view_identifier
create_view_clauses AS query
Parametry
NEBO NAHRADIT
Pokud již existuje zobrazení se stejným názvem, bude nahrazeno.
GLOBÁLNÍ POŽADOVANÝCH
Dočasná zobrazení jsou v rozsahu relace a jsou vyřazena v případě, že relace končí, protože přeskočí zachování definice v podkladovém metastore, pokud existuje. GLOBÁLNÍ dočasná zobrazení jsou vázaná na systém uchovávající dočasnou databázi
global_temp
.POKUD NEEXISTUJE
Vytvoří zobrazení, pokud neexistuje.
view_identifier
Název zobrazení, volitelně kvalifikovaný s názvem databáze.
Syntaxe:
[database_name.] view_name
create_view_clauses
Tyto klauzule jsou volitelné a nerozlišuje pořadí. Může mít následující formáty.
[ ( column_name [ COMMENT column_comment ], ... ) ]
Chcete-li zadat komentáře na úrovni sloupce.[ COMMENT view_comment ]
zadání komentářů na úrovni zobrazení.[ TBLPROPERTIES ( property_name = property_value [ , ... ] ) ]
pro přidání párů klíč-hodnota metadat.
dotaz na Příkaz Select , který sestaví zobrazení ze základních tabulek nebo jiných zobrazení.
Příklady
-- Create or replace view for `experienced_employee` with comments.
CREATE OR REPLACE VIEW experienced_employee
(ID COMMENT 'Unique identification number', Name)
COMMENT 'View for experienced employees'
AS SELECT id, name FROM all_employee
WHERE working_years > 5;
-- Create a global temporary view `subscribed_movies` if it does not exist.
CREATE GLOBAL TEMPORARY VIEW IF NOT EXISTS subscribed_movies
AS SELECT mo.member_id, mb.full_name, mo.movie_title
FROM movies AS mo INNER JOIN members AS mb
ON mo.member_id = mb.id;