Top Ad unit 728 × 90

Recientes

recent

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.

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.apaternopas.amaterno,pai.nombre as Pais,pag.fechapag.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: 5

6 comentarios:

  1. exelente ahora puedo mostrar consultas combinando tablas

    ResponderEliminar
  2. ¿por que se le agraga un alias a las tablas pai de la tabla pais y pas de la tabla pasajero?
    muy buenos los videos saludos desde mexico

    ResponderEliminar
    Respuestas
    1. En este caso se utiliza para hacer referencia a la tabla sin tener que escribir todo el nombre completo de la tabla.

      Eliminar
  3. Una 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
  4. Una 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

Todos los derechos reservados www.IncanatoIT.com - Desarrollando Software © 2014 - 2019
Desarrollado por Blogger, Designed by Sweetheme
IncanatoIt.com. Con la tecnología de Blogger.
y>