Weergave maken

CREATE [OR REPLACE] [[GLOBAL] TEMPORARY] VIEW [db_name.]view_name
  [(col_name1 [COMMENT col_comment1], ...)]
  [COMMENT table_comment]
  [TBLPROPERTIES (key1=val1, key2=val2, ...)]
    AS select_statement

Definieer een logische weergave voor een of meer tabellen of weergaven.

OR REPLACE

Als de weergave niet bestaat, CREATE OR REPLACE VIEW is gelijk aan CREATE VIEW . Als de weergave wel bestaat, CREATE OR REPLACE VIEW is gelijk aan ALTER VIEW .

[GLOBAL] TEMPORARY

TEMPORARY slaat persistent maken van de weergavedefinitie in de onderliggende metastore over, indien van deze. Als is opgegeven, kan de weergave worden gebruikt door verschillende sessies en in werking worden gehouden totdat uw toepassing wordt beƫindigd. Anders worden de tijdelijke weergaven sessiebereik en worden automatisch verbroken als de sessie wordt GLOBAL beƫindigd. Alle algemene tijdelijke weergaven zijn gekoppeld aan een tijdelijke database die door het systeem is global_temp bewaard. De databasenaam blijft behouden en gebruikers mogen deze database dus niet maken/gebruiken/verwijderen. U moet de gekwalificeerde naam gebruiken om toegang te krijgen tot de tijdelijke globale weergave.

Notitie

Een tijdelijke weergave die in een notebook is gedefinieerd, is niet zichtbaar in andere notebooks. Zie Notebook-isolatie.

(col_name1 [COMMENT col_comment1], ...)

Een kolomlijst die het weergaveschema definieert. De kolomnamen moeten uniek zijn met hetzelfde aantal kolommen dat wordt opgehaald door select_statement . Wanneer de kolomlijst niet is opgegeven, is het weergaveschema het uitvoerschema van select_statement .

TBLPROPERTIES

Sleutel-waardeparen voor metagegevens.

AS select_statement

Een SELECT instructie die de weergave definieert. Met de instructie kunt u een selectie maken uit basistabellen of andere weergaven.

Belangrijk

U kunt geen opties voor gegevensbron, partitie of clustering opgeven omdat een weergave niet wordt ge materialiseerd als een tabel.

Voorbeelden

-- Create a persistent view view_deptDetails in database1. The view definition is recorded in the underlying metastore
CREATE VIEW database1.view_deptDetails
  AS SELECT * FROM company JOIN dept ON company.dept_id = dept.id;

-- Create or replace a local temporary view from a persistent view with an extra filter
CREATE OR REPLACE TEMPORARY VIEW temp_DeptSFO
  AS SELECT * FROM database1.view_deptDetails WHERE loc = 'SFO';

-- Access the base tables through the temporary view
SELECT * FROM temp_DeptSFO;

-- Create a global temp view to share the data through different sessions
CREATE GLOBAL TEMP VIEW global_DeptSJC
  AS SELECT * FROM database1.view_deptDetails WHERE loc = 'SJC';

-- Access the global temp views
SELECT * FROM global_temp.global_DeptSJC;

-- Drop the global temp view, temp view, and persistent view.
DROP VIEW global_temp.global_DeptSJC;
DROP VIEW temp_DeptSFO;
DROP VIEW database1.view_deptDetails;