VIEW (vista) SQL
- Página anterior Incremento SQL
- Página siguiente Fecha SQL
Las vistas son tablas visuales.
Este capítulo explica cómo crear, actualizar y eliminar vistas.
Sentencia SQL CREATE VIEW
¿Qué es una vista?
En SQL, las vistas son tablas visuales basadas en el resultado de una sentencia SQL.
Las vistas contienen filas y columnas, al igual que una tabla real. Los campos de las vistas son campos reales de una o más tablas de la base de datos. Podemos agregar funciones SQL, WHERE y JOIN a las vistas y presentar datos, como si vinieran de una única tabla.
Nota:El diseño y estructura de la base de datos no se verán afectados por las funciones, las cláusulas WHERE o JOIN dentro de las vistas.
Sintaxis de SQL CREATE VIEW
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
Nota:Las vistas siempre muestran los datos más recientes. Cada vez que un usuario consulta una vista, el motor de base de datos reconstruye los datos utilizando una sentencia SQL.
Ejemplo de SQL CREATE VIEW
Se puede utilizar una vista desde dentro de una consulta, de un procedimiento almacenado o de otra vista. Al agregar funciones, join, etc., podemos presentar a los usuarios los datos que queremos entregar.
La base de datos de muestra Northwind tiene algunas vistas preinstaladas. La vista "Current Product List" listará todos los productos en uso en la tabla Products. Esta vista se crea con el siguiente SQL:
CREATE VIEW [Current Product List] AS SELECT ProductID, ProductName FROM Products WHERE Discontinued=No
Podemos consultar esta vista superior:
SELECT * FROM [Current Product List]
Otra vista de la base de datos de muestra Northwind seleccionará todos los productos con precios unitarios por encima del promedio en la tabla Products:
CREATE VIEW [Products Above Average Price] AS SELECT ProductName, UnitPrice FROM Products WHERE UnitPrice>(SELECT AVG(UnitPrice) FROM Products)
Podemos consultar esta vista de la siguiente manera:
SELECT * FROM [Products Above Average Price]
Otra instancia de vista de la base de datos Northwind calculará el total de ventas por especie en 1997. Nota: esta vista obtendrá datos de otra vista llamada "Product Sales for 1997":
CREATE VIEW [Ventas de Categoría para 1997] AS SELECT DISTINCT CategoryName,Sum(ProductSales) AS CategorySales FROM [Ventas de Productos para 1997] GROUP BY CategoryName
Podemos consultar esta vista de la siguiente manera:
SELECT * FROM [Ventas de Categoría para 1997]
También podemos agregar condiciones a la consulta. Ahora, solo necesitamos ver todas las ventas de la categoría "Bebidas":
SELECT * FROM [Ventas de Categoría para 1997] WHERE CategoryName='Bebidas'
Actualización de vista SQL
Puede actualizar la vista utilizando la siguiente sintaxis:
Sintaxis de CREATE OR REPLACE VIEW de SQL CREATE OR REPLACE VIEW view_name AS SELECT nombre_de_columna(s) FROM nombre_de_tabla WHERE condición
Ahora, queremos agregar la columna "Categoría" a la vista "Current Product List". Actualizaremos la vista con el siguiente SQL:
CREATE VIEW [Current Product List] AS SELECT ProductID,ProductName,Categoría FROM Products WHERE Descontinuado=No
Revocación de vista SQL
Puede eliminar una vista utilizando la orden DROP VIEW.
Sintaxis de DROP VIEW de SQL
DROP VIEW view_name
- Página anterior Incremento SQL
- Página siguiente Fecha SQL