El objetivo de este artículo es hacer un programa simple para unir dos tablas usando la cláusula Join y Where usando MySQL. A continuación se muestra el método para hacer lo mismo usando MySQL. Los requisitos previos de este artículo son que MySQL y Apache Server estén instalados en su computadora.
¿Qué es una consulta en SQL?
Una consulta SQL es una solicitud de datos/información de una tabla en una base de datos. Estos datos se pueden usar para varios propósitos, como entrenar un modelo, encontrar patrones en los datos, etc.
¿Qué es unirse en SQL?
Una consulta JOIN se usa para combinar filas de dos o más tablas, en función de una sola columna que se puede usar para almacenar los mismos datos de ambas tablas. Así que nos unimos sobre ese punto y unimos filas.
¿Qué es la cláusula Where en SQL?
La palabra clave WHERE en SQL se usa para recuperar datos en un resultado bajo una consulta determinada. También se puede usar para recuperar datos haciendo coincidir patrones como Seleccione todos los estudiantes cuyas calificaciones sean superiores a 90 o seleccione todos los datos de las tablas donde el salario de los empleados es superior a 6 lakhs e inferior a 12 lakhs.
Entonces, comenzaremos creando una base de datos:
Paso 1: crear una base de datos
CREATE DATABASE geeksforgeeks;
Paso 2: Ingrese a esta base de datos para usarla –
USE geeksforgeeks;
Paso 3: Crear una tabla1 como empleado en la base de datos donde realizaremos nuestras operaciones –
CREATE TABLE employee ( ID int(10), Name varchar(55), Email varchar(100), Department int(10) );
Paso 4: Cree otra tabla 2 como departamento donde almacenaremos los datos de los empleados de la segunda empresa.
CREATE TABLE dept ( ID int(10), Name varchar(55), hodId int(10), profit int(20) );
Paso 5: vea el esquema de la tabla para asegurarse de que la tabla sea correcta:
> DESC employee; > DESC dept;
Paso 6: Inserte los datos en la tabla de empleados –
INSERT INTO employee VALUES(1, "Devesh", "geeks@geeks.com", 1); INSERT INTO employee VALUES(2, "Mayank", "for@geeks.com", 1); INSERT INTO employee VALUES(3, "Aditya", "geeks@geeks.com", 2); INSERT INTO employee VALUES(4, "Divyanshi", "portal@geeks.com", 2); INSERT INTO employee VALUES(5, "Megha", "is@geeks.com", 3); INSERT INTO employee VALUES(6, "Himanshi", "a@geeks.com", 3); INSERT INTO employee VALUES(7, "Tanishka", "computer@geeks.com", 4); INSERT INTO employee VALUES(8, "Jatin", "science@geeks.com", 4);
Paso 7: Insertar datos en la tabla de departamento –
INSERT INTO dept VALUES(1, "Computer Science", 1, 100000); INSERT INTO dept VALUES(2, "Electrical", 2, 45000); INSERT INTO dept VALUES(3, "Biotechnology", 3, 30000); INSERT INTO dept VALUES(4, "Architecture", 4, 15000);
Paso 8: consulta los datos usando where y Join –
Ejemplo 1: Seleccione todos los datos de los empleados que son los HOD de los departamentos:
SELECT employee.ID, employee.Name, employee.Email FROM employee JOIN dept WHERE employee.ID = dept.hodId;
Producción:
Ejemplo 2: Seleccione todos los datos donde la ganancia del departamento sea mayor a 45000 –
SELECT * FROM employee LEFT JOIN dept ON employee.Department = dept.ID WHERE employee.Name IN (SELECT Name FROM employee WHERE dept.profit > 45000);
Producción:
Ejemplo 3: Seleccione todos los datos de ambas tablas usando JOIN ( cross join ) –
SELECT * FROM employee FULL JOIN dept WHERE dept.id > 0;
Ejemplo 4: Seleccione todos los empleados de un departamento cuya suma de ganancias sea mayor a 5000
SELECT DISTINCT dept.ID, dept.Name, dept.hodId FROM dept JOIN employee ON dept.ID = employee.Department WHERE hodId IN (SELECT hodId FROM dept WHERE hodId > 0);
Producción: