CONSULTAS AVANZADAS
El uso del operador "JOIN” consultas a bases de datos se refiere a combinar datos de dos o
más tablas en una sola tabla.
La sintaxis y la funcionalidad específicas pueden variar según el sistema de gestión de
bases de datos (SGBD) que estés utilizando.
INNER JOIN: Devuelve únicamente los registros que tienen coincidencias en ambas
tablas. Es decir, solo se incluyen en el resultado los registros que tienen valores comunes en
las columnas que se están uniendo.
La sintaxis básica es la siguiente:
SELECT columnas
FROM tabla1
INNER JOIN tabla2 ON tabla1.columna = tabla2.columna;
Ejemplo:
Supongamos que tenemos dos tablas: "Clientes" y "Pedidos". Queremos obtener una lista
de todos los pedidos realizados por clientes que existen en ambas tablas.
SELECT Pedidos. *
FROM Pedidos
INNER JOIN Clientes ON Pedidos.id_cliente = Clientes.id_cliente;
LEFT JOIN: Devuelve todos los registros de la tabla de la izquierda (tabla1) y los
registros coincidentes de la tabla de la derecha (tabla2). Si no hay coincidencias, se
devolverán valores nulos para las columnas de la tabla de la derecha.
La sintaxis básica es la siguiente:
SELECT columnas
FROM tabla1
LEFT JOIN tabla2 ON tabla1.columna = tabla2.columna;
Ejemplo:
Supongamos que tenemos dos tablas: "Clientes" y "Pedidos". Queremos obtener una lista
de todos los clientes y, si están disponibles, los pedidos correspondientes.
SELECT Clientes.*, Pedidos.*
FROM Clientes
LEFT JOIN Pedidos ON Clientes.id_cliente = Pedidos.id_cliente;
RIGHT JOIN: Devuelve todos los registros de la tabla de la derecha (tabla2) y los
registros coincidentes de la tabla de la izquierda (tabla1). Si no hay coincidencias, se
devolverán valores nulos para las columnas de la tabla de la izquierda.
La sintaxis básica es la siguiente:
SELECT columnas
FROM tabla1
RIGHT JOIN tabla2 ON tabla1.columna = tabla2.columna;
Ejemplo:
Supongamos que tenemos dos tablas: "Clientes" y "Pedidos". Queremos obtener una lista
de todos los pedidos y, si están disponibles, los clientes correspondientes.
SELECT Clientes.*, Pedidos.*
FROM Clientes
RIGHT JOIN Pedidos ON Clientes.id_cliente = Pedidos.id_cliente;