Unión implícita vs Unión explícita en SQL

La cláusula JOIN se usa para combinar filas de dos o más tablas, según una relación entre ellas. Hay dos formas de sintaxis diferentes para realizar la operación JOIN:

  • unión explícita
  • Unión implícita

Paso 1: Creación de la base de datos

Use la siguiente instrucción SQL para crear una base de datos llamada geeks:

CREATE DATABASE geeks;

Paso 2: Uso de la base de datos

Use la siguiente instrucción SQL para cambiar el contexto de la base de datos a geeks:

USE geeks;

Paso 3: Creación de las tablas

Use la siguiente instrucción SQL para crear una tabla llamada estudiante:

CREATE TABLE student(
  ROLL_NO INT PRIMARY KEY,
  NAME VARCHAR(25),
  AGE INT);

Use la siguiente instrucción SQL para crear una tabla llamada curso:

CREATE TABLE course(
  COURSE_ID INT,
  ROLL_NO INT);

Paso 4: agregar datos a las tablas

Use la siguiente instrucción SQL para agregar los datos a la tabla de estudiantes:

INSERT INTO student 
VALUES 
(1, 'Anjali', 20), 
(2, 'Rachna', 18), 
(3, 'Shubham', 21), 
(4, 'Harsh', 25), 
(5, 'Shivam', 18), 
(6, 'Harshit', 20);

Utilice la siguiente instrucción SQL para agregar los datos a la tabla del curso:

INSERT INTO course 
VALUES 
(1, 1),
(2, 2),
(2, 3),
(5, 4),
(3, 5);

Paso 5: Mesa de Estudiantes

Use la siguiente instrucción SQL para ver el contenido de la tabla de estudiantes:

SELECT * FROM student;

Tabla de cursos:

Utilice la siguiente instrucción SQL para ver el contenido de la tabla del curso:

SELECT * FROM course;

Paso 6: Unión explícita 

Esta notación utiliza la palabra clave ON para especificar los predicados de Join y la palabra clave JOIN para especificar las tablas a unir. La unión puede ser de cualquier tipo, es decir, UNIÓN INTERNA, UNIÓN IZQUIERDA, UNIÓN DERECHA o UNIÓN COMPLETA. Es más fácil de entender y menos propenso a errores.

Sintaxis:

SELECT column_names
FROM table1
JOIN table2
ON table1.column_name = table2.column_name

La siguiente consulta mostrará la identificación del curso, los nombres y la edad de los estudiantes inscritos en diferentes cursos mediante el uso de notación de unión explícita.

Consulta:

SELECT COURSE_ID, NAME, AGE 
FROM student
JOIN course
ON student.ROLL_NO = course.ROLL_NO;

Producción:

Paso 7: Unión implícita 

Esta notación simplemente enumera las tablas para unir (en la cláusula FROM de la declaración SELECT), usando comas para separarlas y cláusula WHERE para aplicar a los predicados de unión. Realiza un CROSS JOIN. Es difícil de entender y más propenso a errores.

Sintaxis:

SELECT column_names
FROM table1, table2
WHERE table1.column_name = table2.column_name

La siguiente consulta mostrará la identificación del curso, los nombres y la edad de los estudiantes inscritos en diferentes cursos mediante el uso de la notación de unión implícita.

Consulta:

SELECT COURSE_ID, NAME, AGE 
FROM student, course
WHERE student.ROLL_NO = course.ROLL_NO;

Producción:

Publicación traducida automáticamente

Artículo escrito por saxenaanjali239 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *