Está en la página 1de 6

18/04/2022

Joins & Views


Mg. Omar Sulca Correa

Joins
18/04/2022

JOIN
• La clausula JOIN es usada para combinar filas de dos o mas tablas, basadas en
columnas relacionadas entre ellas.

INNER JOIN
• Retorna todos registros de ambas tablas en tanto haya coincidencias entre las
columnas.

SELECT nombre(s)_columna(s)
FROM tabla1
INNER JOIN tabla2
ON tabla1.nombre_columna = tabla2.name_columna;
18/04/2022

LEFT JOIN
• Retorna todos registros de la tabla izquierda (tabla 1) y los registros coincidentes
de la tabla derecha (tabla 2).

SELECT nombre(s)_columna(s)
FROM tabla1
LEFT JOIN tabla2
ON tabla1.nombre_columna = tabla2.name_columna;

RIGHT JOIN
• Retorna todos registros de la tabla derecha (tabla 2) y los registros coincidentes
de la tabla izquierda (tabla 1).

SELECT nombre(s)_columna(s)
FROM tabla1
RIGHT JOIN tabla2
ON tabla1.nombre_columna = tabla2.name_columna;
18/04/2022

FULL OUTER JOIN

• Retorna todos registros en tanto haya coincidencias entre


registros de la tabla derecha(tabla 2) o izquierda(tabla 1)

SELECT nombre(s)_columna(s)
FROM tabla1
FULL OUTER JOIN tabla2
ON tabla1.nombre_columna = tabla2.name_columna;

Views
18/04/2022

Vistas
• Esta declaración crea una tabla virtual cuyo contenido (columnas y filas) está
definido por una consulta (query).
• Se emplea para crear una vista de datos de una o más tablas. Se puede utilizar
para los siguientes propósitos:
• Enfocar, simplificar y personalizar la percepción que cada usuario tiene de la base de datos.
• Como mecanismo de seguridad al permitir que los usuarios accedan a los datos a través de la vista, sin
otorgarles permisos directos para acceder al contenido de las tablas.
• Proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha
cambiado.

Crear una Vista

CREATE VIEW nombre_vista AS


SELECT columna_1, columna_2, ...
FROM nombre_tabla
WHERE condicion;

• Una view siempre muestra datos actualizados, La vista es recreada cada vez que
es llamada.
• Para consultar la view se realiza lo siguiente:
SELECT * FROM nombre_vista
18/04/2022

Actualizar una Vista


• Una vista puede ser reemplazada con la sentencia CREATE OR REPLACE VIEW

CREATE OR REPLACE VIEW nombre_vista AS


SELECT columna_1, columna_2, ...
FROM nombre_tabla
WHERE condicion;

Borrar una Vista


• Una vista puede ser eliminada con la sentencia DROP VIEW

DROP VIEW nombre_vista;

También podría gustarte