CREATE VIEW

Tworzy tabelę wirtualną, która nie ma danych fizycznych na podstawie zestawu wyników zapytania SQL danych. ALTER VIEW i DROP VIEW tylko zmieniać metadane.

Składnia

CREATE [ OR REPLACE ] [ [ GLOBAL ] TEMPORARY ] VIEW [ IF NOT EXISTS ] view_name
    [ column_list ]
    [ COMMENT view_comment ]
    [ properties ]
    AS query

column_list
   ( { column_alias [ COMMENT column_comment ] } [, ...] )

properties
   TBLPROPERTIES ( { property_key = property_value } [, ...] )

Parametry

  • LUB ZAMIEŃ

    Jeśli widok o tej samej nazwie już istnieje, zostanie zastąpiony. Aby zastąpić istniejący widok, musisz być jego właścicielem.

  • [ GLOBALNY ] TYMCZASOWE

    Widoki TYMCZASOWE są w zakresie sesji i są porzucane po zakończeniu sesji, ponieważ pomija utrwalanie definicji w bazowym magazynze metadanych, jeśli istnieje. Globalne widoki TYMCZASOWE są powiązane z tymczasową bazą danych zachowywaną przez global_temp system.

  • JEŚLI NIE ISTNIEJE

    Tworzy widok tylko wtedy, gdy nie istnieje. Jeśli widok o tej nazwie już istnieje, CREATE VIEW instrukcja jest ignorowana.

    Można określić co najwyżej jeden z IF NOT EXISTS lub OR REPLACE .

  • view_name

    Nazwa nowo utworzonego widoku. Nazwa widoku tymczasowego nie może być kwalifikowana. W pełni kwalifikowana nazwa widoku musi być unikatowa.

  • Column_list

    Opcjonalnie oznacza kolumny w wyniku zapytania widoku. W przypadku podania listy kolumn liczba aliasów kolumn musi odpowiadać liczbie wyrażeń w zapytaniu. Jeśli lista kolumn nie jest określona, aliasy są wyprowadzone z treści widoku.

    • column_alias

      Aliasy kolumn muszą być unikatowe.

    • column_comment

      Opcjonalny literał STRING opisujący alias kolumny.

  • view_comment

    Opcjonalny literał STRING z komentarzami na poziomie widoku.

  • Właściwości

    Opcjonalnie ustawia co najmniej jedną zdefiniowaną przez użytkownika właściwości widoku. Właściwości to pary klucz-wartość.

    • property_key

      Klucz może składać się z co najmniej jednego identyfikatora oddzielonego kropką lub literału ciągu.

      Klucze właściwości muszą być unikatowe.

    • property_value

      Wartość właściwości . Wartość musi być literału BOOLEAN, STRING, INTEGER lub DECIMAL.

  • Zapytanie AS

    Zapytanie, które tworzy widok na podstawie tabel podstawowych lub innych widoków.

Przykłady

-- 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 temporary view `subscribed_movies` if it does not exist.
> CREATE 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;