SQL CREATE VIEW




SQL > Manipulação de Tabelas > Create View

As vistas podem ser consideradas como tabelas virtuais. Regra geral, uma tabela tem um conjunto de definições e armazena fisicamente os dados. Uma vista também tem um conjunto de definições, que são criadas sobre tabela(s) ou outra(s) vista(s), e não armazena fisicamente os dados.

A sintaxe para criar uma vista é a seguinte:

CREATE VIEW "nome_vista" AS "Instrução SQL";

"Instrução SQL" pode ser qualquer uma das instruções SQL abordadas neste tutorial.

Utilizemos um exemplo simples como ilustração. Assuma que temos a seguinte tabela:

Tabela Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Addresschar(50)
Citychar(50)
Countrychar(25)
Birth_Datedatetime

e que queremos criar uma vista denominada V_Customer que contenha apenas as colunas Primeiro_nome, Apelido e País desta tabela, escreveríamos

CREATE VIEW V_Customer
AS SELECT First_Name, Last_Name, Country
FROM Customer;

Agora possuímos uma vista denominada V_Customer com a seguinte estrutura:

View V_Customer
Nome da ColunaTipo de Dados
First_Namechar(50)
Last_Namechar(50)
Countrychar(25)

Também podemos utilizar uma vista para aplicar uniões a duas tabelas. Nesse caso, os utilizadores apenas visualizam uma em vez de duas tabelas e a instrução SQL que os utilizadores devem emitir torna-se muito mais simples. Suponhamos que temos as duas tabelas seguintes:

Tabela Store_Information
Store_NameSalesTxn_Date
Los Angeles150005-Jan-1999
San Diego25007-Jan-1999
Los Angeles30008-Jan-1999
Boston70008-Jan-1999

Tabela Geography
Region_NameStore_Name
EastBoston
EastNew York
WestLos Angeles
WestSan Diego

e queremos criar uma vista com informações de vendas por região. Iríamos emitir a seguinte instrução SQL:

CREATE VIEW V_REGION_SALES
AS SELECT A1.Region_Name REGION, SUM(A2.Sales) SALES
FROM Geography A1, Store_Information A2
WHERE A1.Store_Name = A2.Store_Name
GROUP BY A1.Region_Name;

Assim obtemos uma vista, V_REGION_SALES, que foi definida para armazenar registos de vendas por região. Se quisermos descobrir o conteúdo desta vista, escrevemos

SELECT * FROM V_REGION_SALES;

Resultado:

REGION SALES
East 700
West 2050

SQL CREATE INDEX >>



Copyright © 2014   1keydata.com   Todos os direitos reservados.


SQL CREATE TABLE
SQL CONSTRAINT
SQL NOT NULL
SQL DEFAULT
SQL UNIQUE
SQL CHECK
SQL Chave Primária
SQL Chave Externa
SQL CREATE VIEW
SQL CREATE INDEX
SQL ALTER TABLE
SQL DROP TABLE
SQL TRUNCATE TABLE
SQL INSERT INTO
SQL UPDATE
SQL DELETE FROM




Mapa do site