JOINS en SQL Server: Tutorial con ejemplos
Podemos recuperar datos de mรกs de una tabla usando la declaraciรณn JOIN. Existen principalmente 4 tipos diferentes de UNIONES en el servidor SQL. Aprenderemos todas las UNIONES en Servidor SQL con ejemplos:
- UNIรN INTERNA/uniรณn simple
- UNIรN EXTERIOR IZQUIERDA/UNIรN IZQUIERDA
- UNIรN EXTERIOR DERECHA/UNIรN DERECHA
- UNIรN EXTERIOR COMPLETA
INNER JOIN
Este tipo de JOIN de SQL Server devuelve filas de todas las tablas en las que la condiciรณn de uniรณn es verdadera. Tiene la siguiente sintaxis:
SELECT columns FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column;
Utilizaremos las siguientes dos tablas para demostrar esto:
Mesa de estudiantes:
Tabla de tarifas:
El siguiente comando demuestra una UNIรN INTERNA en el servidor SQL con un ejemplo:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students INNER JOIN Fee ON Students.admission = Fee.admission
El comando devuelve lo siguiente:
Podemos informar a los estudiantes que han pagado su cuota. Usamos la columna con valores comunes en ambas tablas, que es la columna de admisiรณn.
IZQUIERDA รNICA EXTERNA
Este tipo de combinaciรณn devolverรก todas las filas de la tabla de la izquierda mรกs los registros de la tabla de la derecha con valores coincidentes. Por ejemplo:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students LEFT OUTER JOIN Fee ON Students.admission = Fee.admission
El cรณdigo devuelve lo siguiente:
Los registros sin valores coincidentes se reemplazan con NULL en las columnas respectivas.
UNIรN EXTERIOR DERECHA
Este tipo de combinaciรณn devuelve todas las filas de la tabla de la derecha y solo aquellas con valores coincidentes en la tabla de la izquierda. Por ejemplo:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students RIGHT OUTER JOIN Fee ON Students.admission = Fee.admission
La declaraciรณn para el servidor SQL OUTER JOINS devuelve lo siguiente:
El motivo del resultado anterior es que todas las filas de la tabla Tarifas estรกn disponibles en la tabla Estudiantes cuando coinciden en la columna de admisiรณn.
UNIรN EXTERIOR COMPLETA
Este tipo de combinaciรณn devuelve todas las filas de ambas tablas con valores NULL donde la condiciรณn JOIN no es verdadera. Por ejemplo:
SELECT Students.admission, Students.firstName, Students.lastName, Fee.amount_paid FROM Students FULL OUTER JOIN Fee ON Students.admission = Fee.admission
El cรณdigo devuelve el siguiente resultado para consultas FULL OUTER JOINS en SQL:






