JOINS:
Las combinaciones en SQL se utilizan para combinar filas de varias tablas en una condición específica, que es una relación entre las columnas de dos tablas. Y hay diferentes tipos de uniones y en este artículo vamos a cubrir INNER JOIN y OUTER JOIN y sus diferencias.
Consideremos las dos tablas estudiante y ubicación y veamos cómo se verían las diferencias al combinar tablas usando diferentes combinaciones.
Tabla 1 –
Identificación del Estudiante | nombre del estudiante |
12 | Gupta |
dieciséis | Girish |
17 | Gupta |
14 | Kunal |
15 | Krsna |
18 | satisfacer |
alumno
Tabla 2 –
Identificación del Estudiante | estudiante_ubicación |
12 | Delhi |
13 | Madrás |
15 | tamil nadu |
14 | Bombay |
dieciséis | Telangana |
20 | Punjab |
ubicación
En primer lugar, crear tablas e insertar datos en tablas utilizando MSSQL como servidor:
- Creando las tablas de estudiantes y la ubicación usando las siguientes consultas:
- Insertar filas en las tablas de estudiantes y la ubicación usando las siguientes consultas:
- Ver las tablas usando la siguiente consulta:
Tipos de UNIONES:
1. UNIÓN INTERNA
- EQUI ÚNETE
- UNIRSE AUTOMÁTICAMENTE
2. UNIÓN EXTERNA
- UNIRSE A LA IZQUIERDA
- UNIÓN DERECHA
- ÚNETE COMPLETO
1. Combinación interna:
cuando se usa la combinación interna, considera solo aquellos atributos que queremos que coincidan con la tabla y, si no es así, no se incluirán en nuestra tabla de resultados.
Dos tipos de unión interna:
- Equi Join:
es la subcategoría de Inner Join donde está restringida solo a la condición de igualdad en la tabla. Se dice que la unión es Equi join si y solo si hay una condición de igualdad en la consulta.
La consulta de Equi Join en las dos tablas anteriores:
SELECT * FROM student INNER JOIN location ON student.student_id = location.student_id;
TABLA DE SALIDA –
- Self Join:
Self Join considera la misma tabla como otra tabla y genera la tabla resultante después de que se cumple la condición requerida.
La consulta de Self Join está en las dos tablas anteriores:
SELECT s1.student_id ,s1.student_name FROM student s1 INNER JOIN student s2 ON s1.student_name= s2.student_name AND s1.student_id<> s2.student_id;
TABLA DE SALIDA –
Representación del diagrama de Venn de la unión interna:
2. Combinación externa:
en la combinación externa, consideramos cualquiera de las tablas por completo o ambas, de modo que los campos restantes que no coincidían en ambas tablas se mantuvieron NULL.
Tres tipos de unión externa:
1. Unión izquierda o (unión externa izquierda):
en la unión izquierda, consideramos la tabla izquierda por completo y los atributos coincidentes (según la condición) en la tabla derecha junto con los atributos no coincidentes de la tabla izquierda con la tabla de la derecha se colocan NULL con respecto a la columna de la tabla de la izquierda.
La consulta para Left Join está en las dos tablas anteriores:
SELECT * FROM student LEFT JOIN location ON student.student_id = location.student_id;
TABLA DE SALIDA:
Representación del diagrama de Venn de la unión izquierda:
Right , Join:
en la unión derecha, consideramos la tabla derecha por completo y los atributos coincidentes (según la condición) en la tabla izquierda junto con los atributos no coincidentes de la tabla derecha con la tabla izquierda se colocan NULL con respecto a una columna en la tabla de la derecha.
La consulta para Right Join está en las dos tablas anteriores:
SELECT * FROM student RIGHT JOIN location ON student.student_id = location.student_id;
TABLA DE SALIDA –
Representación del diagrama de Venn de la unión derecha:
Unión completa:
es la unión de la unión por la izquierda y la unión por la derecha donde se consideran todas las columnas de la tabla de la izquierda y la tabla de la derecha donde los atributos no coincidentes o no encontrados de la tabla de la izquierda o la tabla de la derecha se colocarán con NULL en la tabla resultante .
La consulta de Full Join está en las dos tablas anteriores:
SELECT * FROM student FULL JOIN location ON student.student_id = location.student_id;
TABLA DE SALIDA –
Representación del diagrama de Venn de la unión completa:
Publicación traducida automáticamente
Artículo escrito por lokeshpotta20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA