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:

INNER JOIN

Tabla de tarifas:

INNER JOIN

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:

INNER JOIN

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:

IZQUIERDA รšNICA EXTERNA

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:

UNIร“N EXTERIOR DERECHA

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:

UNIร“N EXTERIOR COMPLETA

Resumir este post con: