Formas sencillas de unir tres tablas en SQL (con imágenes)

Tabla de contenido:

Formas sencillas de unir tres tablas en SQL (con imágenes)
Formas sencillas de unir tres tablas en SQL (con imágenes)

Video: Formas sencillas de unir tres tablas en SQL (con imágenes)

Video: Formas sencillas de unir tres tablas en SQL (con imágenes)
Video: Cómo automatizar TAREAS REPETITIVAS con scripts usando AUTOHOTKEY 2024, Abril
Anonim

Al trabajar con tablas en SQL, puede haber algunas situaciones en las que necesite consultar tres o más tablas. Puede unir tres tablas utilizando primero una declaración de unión para unir dos tablas y crear una tabla unida temporal. Luego use una segunda declaración de combinación para unirse a la tercera tabla.

Pasos

11227971 1
11227971 1

Paso 1. Escriba SELECT seguido de los nombres de las columnas que desea consultar

Escriba el nombre de la columna de cada una de las tres que desea consultar. Separe el nombre de cada columna con una coma. En este ejemplo, consultaremos desde tres tablas llamadas "Estudiantes", "Escuelas", "Detalles"

Por ejemplo, SELECT student_id, student_name, school_id, school, grade

11227971 2
11227971 2

Paso 2. Escriba FROM seguido del nombre de la primera tabla

Esto puede ir en una línea separada o inmediatamente después de la primera declaración. En nuestro ejemplo, escribiríamos FROM Estudiantes.

11227971 3
11227971 3

Paso 3. Escriba una declaración de combinación seguida del nombre de la segunda tabla

Hay cuatro tipos de declaraciones de combinación que puede utilizar para unir dos tablas. Son los siguientes:

  • Escriba JOIN para hacer una Unir internamente. Esto devuelve registros que tienen valores coincidentes en ambas tablas. Por ejemplo, FROM Students JOIN Details.
  • Escriba LEFT JOIN para hacer una Unión exterior izquierda. Esto devuelve todos los registros de la tabla de la izquierda y los valores coincidentes de la tabla de la derecha. Por ejemplo, FROM Students LEFT JOIN Details.
  • Escriba RIGHT JOIN para hacer una Unión derecha externa. Esto devuelve todos los registros de la tabla de la derecha y los valores coincidentes de la tabla de la izquierda. Por ejemplo, FROM Students RIGHT JOIN Detalles.
  • Escriba FULL JOIN para hacer un Unión externa completa. Esto devuelve todos los registros de ambas tablas. Por ejemplo, FROM Students FULL JOIN Details.
11227971 4
11227971 4

Paso 4. Escriba una instrucción "ON" para las tablas y columnas que se van a unir

La sintaxis de esta declaración es "ON table_1.primary_key = table_2.foreign_key". "Table_1" es el nombre de la primera tabla a la que se une y "primary_key" es el nombre de la columna principal en la primera tabla. "Table_2" es el nombre de la segunda tabla y "Foreign_key" es un nombre de columna de la segunda tabla que coincide con la columna principal de la primera tabla.

  • En nuestro ejemplo, "Estudiantes" es la primera tabla y "student_id" es la clave principal de la tabla Estudiantes, que también se encuentra en la tabla Detalles. Entonces, escribiríamos ON Students.student_id = Details.student_id. Esto une la tabla Estudiantes con la tabla Detalles usando "student_id" como clave principal.
  • Alternativamente, si la columna nombre_estudiante está en la tabla "Detalles", puede mostrar la columna nombre_estudiante en lugar del campo id_estudiante escribiendo ON Students.student_id = Details.student_name.
11227971 5
11227971 5

Paso 5. Escriba una declaración de combinación seguida del nombre de la tercera tabla

Esto puede estar en una línea separada o inmediatamente después de la declaración "ON" que unió las dos primeras tablas. Puede utilizar cualquiera de las cuatro declaraciones de combinación.

En nuestro ejemplo, escribiríamos JOIN Schools

11227971 6
11227971 6

Paso 6. Escriba una declaración "ON" que indique qué tablas y columnas se unirán

La sintaxis de la tercera combinación es "ON table_3.primary_key = table_1.foreign_key". "Tabla 1". "Table_3 es el nombre de la tercera tabla. Esto agrega la tabla tres a la combinación final utilizando el nombre de la columna principal de la tercera tabla y la clave externa de la primera tabla. En nuestro ejemplo, escribiríamos ON Schools.student_id = Students.student_id. La declaración de combinación completa debería verse así:

    SELECT student_id, student_name, school_id, school, grade FROM Students FULL JOIN Details ON Students.student_id = Details.student_id JOIN Schools ON Schools.student_id = Students.student_id

Recomendado: