Intermedio
15 min de lecturaVistas
Tablas virtuales basadas en consultas SELECT
Una vista (VIEW) es una tabla virtual cuyo contenido está definido por una consulta SELECT.
Crear una vista
sql
1CREATE VIEW usuarios_activos AS2SELECT id, nombre, email, fecha_registro3FROM usuarios4WHERE activo = true;Usar una vista
sql
1SELECT * FROM usuarios_activos ORDER BY fecha_registro DESC;Vista con JOINs
sql
1CREATE VIEW resumen_ventas AS2SELECT 3 p.nombre as producto,4 c.nombre as categoria,5 v.cantidad,6 v.total,7 v.fecha8FROM ventas v9JOIN productos p ON v.producto_id = p.id10JOIN categorias c ON p.categoria_id = c.id;Sintaxis
Sintaxis
sql
1CREATE [OR REPLACE] VIEW nombre_vista AS2SELECT consulta;Ejemplos
Crear vista de usuarios con posts
Vista que combina usuarios y sus posts
Ejemplo
sql
1CREATE VIEW usuarios_con_posts AS2SELECT u.id, u.nombre, COUNT(p.id) as total_posts3FROM usuarios u4LEFT JOIN posts p ON u.id = p.usuario_id5GROUP BY u.id, u.nombre;6 7SELECT * FROM usuarios_con_posts;Resultado:
| id | nombre | total_posts | |----|--------|-------------| | 1 | Ana | 5 | | 2 | Carlos | 3 | | 3 | Laura | 0 |