VIEW (visão) SQL
- Página Anterior Incremento SQL
- Próxima Página Data SQL
As visões são tabelas visuais.
Este capítulo explica como criar, atualizar e excluir visões.
Sentença SQL CREATE VIEW
O que é uma visão?
Em SQL, uma visão é uma tabela visualizada a partir do conjunto de resultados de uma declaração SQL.
As visões contêm linhas e colunas, como uma tabela real. Os campos da visão são campos reais de uma ou mais tabelas reais do banco de dados. Podemos adicionar funções SQL, WHERE e JOIN às visões e também podemos submeter dados, como se viessem de uma única tabela.
Notas:O design e a estrutura do banco de dados não são afetados pelas funções, WHERE ou JOIN dentro da visão.
Sintaxe do SQL CREATE VIEW
CREATE VIEW view_name COMO SELECT column_name(s) FROM table_name WHERE condition
Notas:As visões sempre mostram os dados mais recentes. Cada vez que um usuário consulta uma visão, o motor de banco de dados reconstitui os dados usando uma declaração SQL.
Exemplo de SQL CREATE VIEW
As visões podem ser usadas dentro de uma consulta, dentro de um procedimento armazenado ou dentro de outra visão. Ao adicionar funções, join, etc. às visões, podemos fornecer aos usuários os dados desejados de maneira precisa.
O banco de dados de amostra Northwind possui algumas visões padrão instaladas. A visão "Current Product List" lista todos os produtos em uso na tabela Products. Essa visão é criada usando o seguinte SQL:
CREATE VIEW [Current Product List] COMO SELECT ProductID,ProductName FROM Products WHERE Discontinued=No
Podemos consultar essa visão acima:
SELECT * FROM [Current Product List]
Outra visão do banco de dados de amostra Northwind selecionará todos os produtos da tabela Products cujo preço unitário seja acima do preço unitário médio:
CREATE VIEW [Products Above Average Price] COMO SELECT ProductName,UnitPrice FROM Products WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)
Podemos consultar essa visão assim:
SELECT * FROM [Products Above Average Price]
Outra instância de visão proveniente do banco de dados Northwind calculará o total de vendas de cada tipo em 1997. Observe que essa visão选取数据来自另一个名为 "Product Sales for 1997" 的视图:
CREATE VIEW [Category Sales For 1997] COMO SELECT DISTINCT CategoryName,Sum(ProductSales) COMO CategorySales FROM [Product Sales for 1997] GROUP BY CategoryName
Podemos consultar essa visão assim:
SELECT * FROM [Category Sales For 1997]
Também podemos adicionar condições à consulta. Agora, apenas precisamos ver as vendas totais da categoria "Beverages":
SELECT * FROM [Category Sales For 1997] WHERE CategoryName='Beverages'
Atualizar Visão SQL
Você pode usar a seguinte sintaxe para atualizar a visão:
Sintaxe CREATE OR REPLACE VIEW do SQL CREATE OR REPLACE VIEW view_name AS SELECT nome_da_coluna(s) FROM nome_da_tabela WHERE condição
Agora, queremos adicionar a coluna "Categoria" à visão "Current Product List". Vamos atualizar a visão com o seguinte SQL:
CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName,Categoria FROM Products WHERE Descontinuado=Não
Revogar Visão SQL
Você pode usar o comando DROP VIEW para excluir uma visão.
Sintaxe DROP VIEW do SQL
DROP VIEW view_name
- Página Anterior Incremento SQL
- Próxima Página Data SQL