Combinación de Tablas Inner Join - Bases de Datos en Microsoft Sql Server 2014 (20-35)
Buen día amigos de IncanatoIt, en este artículo explicaremos de manera detallada el uso de la cláusula Inner Join en sql server 2014, que permite de cierto modo combinar dos tablas, Inner Join permite emparejar filas de distintas tablas de forma más eficiente que con el producto cartesiano cuando una de las columnas de emparejamiento está indexada (Existe relación entre ambas tablas).
Resolveremos tres ejemplos para detallar el uso de la cláusula Inner Join en Sql Server 2014, uniendo primero dos tablas y después más de tres tablas, siguiendo nuestro ejemplo propuesto de la base de datos de reserva de Vuelos DBRESERVA.
Puedes seguir el curso Completo desde:
Puedes descargar el Material del Curso desde, Archivos del Curso, Backup y Presentaciones:
Combinación de Tablas JOIN
En determinada ocasión se tendrá que unir más tablas para combinar los valores y poder mostrarlos juntos en una consulta, para esto utilizamos la cláusula JOIN.
Hay que diferenciar dos tipos de combinaciones:
Internas: Devuelven todas las filas que cumplen con la condición de las tablas, en caso de no encontrarse coincidencia de valores no muestra nada.
Externas: las filas resultantes no son directamente de la tabla origen, podría ser de la izquierda, derecha o completa.
Combinación de tablas Join
INNER JOIN
JOIN
LEFT JOIN
RIGHT JOIN
FULL JOIN
CROSS JOIN
INNER JOIN
El INNER JOIN es otro tipo de composición de tablas, permite emparejar filas de distintas tablas de forma más eficiente que con el producto cartesiano cuando una de las columnas de emparejamiento está indexada.
El INNER JOIN es otro tipo de composición de tablas, permite emparejar filas de distintas tablas de forma más eficiente que con el producto cartesiano cuando una de las columnas de emparejamiento está indexada.
Ejemplos
1. Implementar un Script que
permita mostrar los pasajeros con su correspondiente país de residencia (Inner Join).
Tabla Pasajero-País
--Utilizando un producto cartesiano
select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as [País]
from pasajero pas, pais pai
go
--Utilizando la cláusula Inner Join
select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as Pais
from pasajero pas inner join pais pai
on pas.idpais=pai.idpais
go
--Utilizando un producto cartesiano y aplicando un filtro Where
select pas.nombre,pas.apaterno,pas.amaterno,pai.nombre as Pais
from pasajero pas, pais pai
where pas.idpais=pai.idpais
go
2. Implementar un Script que permita mostrar los pasajeros con las siguientes columnas idpasajero, nombre, apaterno, amaterno, país, fecha de pago, monto de pago (Inner Join).
Tabla País-Pasajero-Pago
select pas.idpasajero,pas.nombre,pas.apaterno, pas.amaterno,pai.nombre as Pais,pag.fecha, pag.monto
from pasajero pas inner join pais pai
on pas.idpais=pai.idpais
inner join pago pag
on pag.idpasajero=pas.idpasajero
go
3. Implementar un Script que permita mostrar las reservas de un determinado PASAJERO especificado por su nombre. Finalmente, debe ordenar la fecha de reserva de forma descendente.
Tabla Reserva
declare @num_documento varchar(12)='47715777'
select res.*
from pago pag inner join pasajero
pas
on pag.idpasajero=pas.idpasajero
inner join
reserva res
on pag.idreserva=res.idreserva
where pas.num_documento=@num_documento
go
Combinación de Tablas Inner Join (20-35) Bases de Datos en Microsoft Sql Server 2014
Saludos Imperio, un abrazo a la distancia!.
Combinación de Tablas Inner Join - Bases de Datos en Microsoft Sql Server 2014 (20-35)
Reviewed by IncanatoIt-ad
on
11:37
Rating:
exelente ahora puedo mostrar consultas combinando tablas
ResponderEliminarGracias a todos por seguir el curso, saludos cordiales!
Eliminar¿por que se le agraga un alias a las tablas pai de la tabla pais y pas de la tabla pasajero?
ResponderEliminarmuy buenos los videos saludos desde mexico
En este caso se utiliza para hacer referencia a la tabla sin tener que escribir todo el nombre completo de la tabla.
EliminarUna pregunta, cuando la Base de datos es muy grande(Hay 10 Tablas) 2 Millones de registros, y necesito 6 variables de esas 10 tablas, como las puedo anidar y me de u resultado optimo, mediante un reporte?
ResponderEliminarUna pregunta, cuando la Base de datos es muy grande(Hay 10 Tablas) 2 Millones de registros, y necesito 6 variables de esas 10 tablas, como las puedo anidar y me de u resultado optimo, mediante un reporte?
ResponderEliminar