UNIRSE A SQL
Una combinación SQL se utiliza para recuperar o combinar datos (filas o columnas) de dos o más tablas según las condiciones definidas.
Tabla 1: Orden
Solicitar ID | Identificación del cliente | Nombre del pedido | Nombre del producto |
---|---|---|---|
12025 | 101 | Pedro | A B C |
12030 | 105 | Roberto | XYX |
12032 | 110 | Jaime | XYZ |
12034 | 115 | Andrés | PQR |
12035 | 120 | Mateo | aaa |
Tabla 2: Cliente
Identificación del cliente | Nombre del cliente | País |
---|---|---|
100 | Desordenado | maxico |
101 | Príncipe | Taiwán |
103 | Maria Fernandez | Pavo |
105 | Jazmín | París |
110 | Comadreja Faf | Indonesia |
120 | Cohete de Roma | Rusia |
Ahora tenemos dos mesas. Orden y el Cliente . Hay un Identificación del cliente columna común en ambas tablas. Entonces, escriba la consulta SQL para definir la relación general para seleccionar los registros de coincidencias de ambas tablas.
Select Order.OrderID, Customer.CustomerName, Customer.Country, Order.ProductName from Order INNER JOIN Customer ON Order.CustomerID = Customer.CustomerID;
Después de ejecutar lo anterior SQL consultas, produce el siguiente resultado:
Solicitar ID | Nombre del cliente | País | Nombre del producto |
---|---|---|---|
12025 | Príncipe | Taiwán | A B C |
12030 | Jazmín | París | XYX |
12032 | Comadreja Faf | Indonesia | XYZ |
12035 | Cohete de Roma | Rusia | aaa |
Tipos de unión SQL
Hay diferentes tipos de combinaciones utilizadas en SQL:
- Unión interna / Unión simple
- Unión exterior izquierda / Unión izquierda
- Unión exterior derecha / Unión derecha
- Unión externa completa
- Unión cruzada
- Autounirse
Unir internamente
La combinación interna se utiliza para seleccionar todas las filas o columnas coincidentes en ambas tablas o siempre que la condición definida sea válida en SQL.
Sintaxis:
Select column_1, column_2, column_3 FROM table_1 INNER JOIN table_2 ON table_1.column = table_2.column;
Podemos representar la unión interna mediante el diagrama de Venn, de la siguiente manera:
Tabla 1: Estudiantes
Identificación del Estudiante | Nombre del estudiante | Sujeto | ID del profesor |
---|---|---|---|
101 | alejandra | Ciencias de la Computación | T201 |
102 | Charles | Ciencias económicas | T202 |
103 | Tom Crucero | Ciencias de la Computación | T201 |
104 | Aarón Finch | Electrónica | T203 |
105 | Semilla bajoff | diseño web | T204 |
106 | cristóbal | Literatura inglesa | T205 |
107 | Mezclilla | Diseñador de moda | T206 |
Tabla 2: Docentes
ID del profesor | Nombre del maestro | ProfesorCorreo electrónico |
---|---|---|
T201 | Sr. Davis | [correo electrónico protegido] |
T202 | señora jonas | [correo electrónico protegido] |
T201 | Sr. Davis | [correo electrónico protegido] |
T204 | señora lopez | [correo electrónico protegido] |
T205 | señora wiley | [correo electrónico protegido] |
T206 | señor frijol | [correo electrónico protegido] |
Disponemos de dos mesas: Estudiantes y el Maestros Mesas. Escribamos las consultas SQL para unir la tabla usando el UNIR INTERNAMENTE como sigue:
Select Student_ID, StudentName, TeacherName, TeacherEmail FROM Students INNER JOIN Teachers ON Students.TeacherID = Teachers.TeacherID;
Después de ejecutar la consulta, genera la siguiente tabla.
Unión natural
Es un tipo de tipo interno que une dos o más tablas según el mismo nombre de columna y tiene el mismo tipo de datos presente en ambas tablas.
Sintaxis:
Select * from tablename1 Natural JOIN tablename_2;
Disponemos de dos mesas: Estudiantes y el Maestros Mesas. Escribamos las consultas SQL para unir la tabla usando el ÚNETE como sigue:
Select * from Students Natural JOIN Teachers;
Después de ejecutar la consulta anterior, genera la siguiente tabla.
UNIRSE A LA IZQUIERDA
El UNIRSE A LA IZQUIERDA se utiliza para recuperar todos los registros de la tabla izquierda (tabla1) y las filas o columnas coincidentes de la tabla derecha (tabla2). Si ambas tablas no contienen filas o columnas coincidentes, devuelve NULL.
Sintaxis:
Select column_1, column_2, column(s) FROM table_1 LEFT JOIN table_2 ON table_1.column_name = table_2.column_name;
También podemos representar la unión izquierda mediante el diagrama de Venn, de la siguiente manera:
Nota: En algunas bases de datos, LEFT JOIN también se conoce como LEFT OUTER JOIN.
Tabla 1: Detalles_del_producto
ID del Producto | Nombre del producto | Cantidad |
---|---|---|
Pro101 | Computadora portátil | 56000 |
Pro102 | Móvil | 38000 |
Pro103 | Auriculares | 5000 |
Pro104 | Televisión | 25000 |
Pro105 | iPad | 60000 |
Tabla 2: Detalles_del_cliente
eliminar el último compromiso git
Nombre del cliente | Dirección del cliente | Edad del cliente | ID del Producto |
---|---|---|---|
Martín Guptill | San Francisco, USA | 26 | Pro101 |
Jaime | Australia | 29 | Pro103 |
Ambati Williamson | Nueva Zelanda | 27 | Pro102 |
Jofra Archer | Sudáfrica | 24 | Pro105 |
Kate Wiley | Australia | 20 | Pro103 |
Disponemos de dos mesas: Detalles de producto y el Detalles del cliente Mesas. Escribamos las consultas SQL para unir la tabla usando el UNIRSE A LA IZQUIERDA como sigue:
Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID;
Después de ejecutar la consulta, genera la siguiente tabla.
UNIÓN DERECHA o UNIÓN externa DERECHA:
El ÚNETE DERECHO se utiliza para recuperar todos los registros de la tabla derecha (tabla2) y las filas o columnas coincidentes de la tabla izquierda (tabla1). Si ambas tablas no contienen filas o columnas coincidentes, devuelve NULL.
Sintaxis:
Select column_1, column_2, column(s) FROM table_1 RIGHT JOIN table_2 ON table_1.column_name = table_2.column_name;
También podemos representar la unión derecha mediante el diagrama de Venn, de la siguiente manera:
Nota: En algunas bases de datos, la UNIÓN DERECHA también se conoce como UNIÓN EXTERNA DERECHA.
Tabla 1: Detalles_del_producto
IDENTIFICACIÓN | Nombre del producto | Cantidad |
---|---|---|
Pro101 | Computadora portátil | 56000 |
Pro102 | Móvil | 38000 |
Pro103 | Auriculares | 5000 |
Pro104 | Televisión | 25000 |
Pro105 | iPad | 60000 |
Tabla 2: Detalles_del_cliente
Nombre del cliente | Dirección del cliente | Edad del cliente | ID del Producto |
---|---|---|---|
Martín Guptill | San Francisco, USA | 26 | Pro101 |
Jaime | Australia | 29 | Pro103 |
Ambati Williamson | Nueva Zelanda | 27 | Pro102 |
Jofra Archer | Sudáfrica | 24 | Pro105 |
Presagio | Inglaterra | 29 | Pro107 |
morgan | Inglaterra | 20 | Pro108 |
Disponemos de dos mesas: Detalles de producto y el Detalles del cliente Mesas. Escribamos las consultas SQL para unir la tabla usando el ÚNETE DERECHO como sigue:
cómo abrir un archivo json
Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID;
Después de ejecutar la consulta, genera la siguiente tabla.
UNIÓN COMPLETA o UNIÓN externa COMPLETA:
Es un conjunto de resultados combinados de ambos. UNIRSE A LA IZQUIERDA y ÚNETE DERECHO . Las tablas unidas devuelven todos los registros de ambas tablas y, si no se encuentran coincidencias en la tabla, coloca NULL. También se le llama un UNIÓN EXTERIOR COMPLETA .
Sintaxis:
Select column_1, column_2, column(s) FROM table_1 FULL JOIN table_2 ON table_1.column_name = table_2.column_name;
O, UNIÓN EXTERIOR COMPLETA
Select column_1, column_2, column(s) FROM table_1 FULL OUTER JOIN table_2 ON table_1.column_name = table_2.column_name;
También podemos representar la unión externa completa mediante el diagrama de Venn, de la siguiente manera:
Tabla 1: Detalles_del_producto
IDENTIFICACIÓN | Nombre del producto | Cantidad |
---|---|---|
Pro101 | Computadora portátil | 56000 |
Pro102 | Móvil | 38000 |
Pro103 | Auriculares | 5000 |
Pro104 | Televisión | 25000 |
Pro105 | iPad | 60000 |
Tabla 2: Detalles_del_cliente
Nombre del cliente | Dirección del cliente | Edad del cliente | ID del Producto |
---|---|---|---|
Martín Guptill | San Francisco, USA | 26 | Pro101 |
Jaime | Australia | 29 | Pro103 |
Ambati Williamson | Nueva Zelanda | 27 | Pro102 |
Jofra Archer | Sudáfrica | 24 | Pro105 |
Presagio | Inglaterra | 29 | Pro107 |
morgan | Inglaterra | 20 | Pro108 |
Disponemos de dos mesas: Detalles de producto y el Detalles del cliente Mesas. Escribamos las consultas SQL para unir la tabla usando el LLENO ÚNETE de la siguiente manera:
Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details FULL JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID;
Después de ejecutar la consulta, genera la siguiente tabla.
Nota: MySQL no admite conceptos FULL JOIN, por lo que podemos usar la cláusula UNION ALL para combinar ambas tablas.
Aquí está la sintaxis para UNIÓN TODOS Cláusula para combinar las tablas.
Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details LEFT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID UNION ALL Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details RIGHT JOIN Customer_Details ON Product_Details.ID = Customer_Details.ProductID
UNIÓN CRUZADA
También se le conoce como UNIÓN CARTESIANA , que devuelve el producto cartesiano de dos o más tablas unidas. El UNIÓN CRUZADA produce una tabla que combina cada fila de la primera tabla con cada segunda fila de la tabla. No es necesario incluir ninguna condición en CROSS JOIN.
Sintaxis:
Select * from table_1 cross join table_2;
O,
Select column1, column2, column3 FROM table_1, table_2;
Tabla 1: Detalles_del_producto
IDENTIFICACIÓN | Nombre del producto | Cantidad |
---|---|---|
Pro101 | Computadora portátil | 56000 |
Pro102 | Móvil | 38000 |
Pro103 | Auriculares | 5000 |
Pro104 | Televisión | 25000 |
Pro105 | iPad | 60000 |
Tabla 2: Detalles_del_cliente
Nombre del cliente | Dirección del cliente | Edad del cliente | ID del Producto |
---|---|---|---|
Martín Guptill | San Francisco, USA | 26 | Pro101 |
Jaime | Australia | 29 | Pro103 |
Ambati Williamson | Nueva Zelanda | 27 | Pro102 |
Jofra Archer | Sudáfrica | 24 | Pro105 |
Presagio | Inglaterra | 29 | Pro107 |
morgan | Inglaterra | 20 | Pro108 |
Disponemos de dos mesas: Detalles de producto y el Detalles del cliente Mesas. Escribamos las consultas SQL para unir la tabla usando el LLENO ÚNETE de la siguiente manera:
Select ID, ProductName, CustomerName, CustomerAddress, Amount FROM Product_Details, Customer_Details;
Después de ejecutar la consulta, genera la siguiente tabla.
AUTOUNIRSE
Es un SELF JOIN que se utiliza para crear una tabla uniéndose a sí misma como si hubiera dos tablas. Crea un nombre temporal de al menos una tabla en una declaración SQL.
Sintaxis:
Select column1, column2, column(s) FROM table_1 Tbl1, table_2 Tbl2 WHERE condition;
tabla 1 y Tbl2 Hay dos alias de tabla diferentes para la misma tabla.
Tabla 1: Detalles_del_producto
IDENTIFICACIÓN | Nombre del producto | Cantidad |
---|---|---|
Pro101 | Computadora portátil | 56000 |
Pro102 | Móvil | 38000 |
Pro103 | Auriculares | 5000 |
Pro104 | Televisión | 25000 |
Pro105 | iPad | 60000 |
Escribamos las consultas SQL para unir la tabla usando el AUTOUNIRSE como sigue:
Select TB.ID, TB.ProductName FROM Product_Details TB, Product_Details TB2 WHERE TB.AMOUNT <tb2.amount; < pre> <p>After executing the query, it produces the below table. </p> <img src="//techcodeview.com/img/sql-tutorial/44/types-sql-join-12.webp" alt="Types of SQL JOIN"> <hr></tb2.amount;>