Las consultas de MySQL generalmente se escriben una vez y luego se envuelven en funciones de clase para minimizar la repetición de código. Este artículo enumera las 10 consultas más utilizadas en MySQL.
Una consulta es esencialmente una solicitud de información que se recuperará de una tabla de base de datos o una combinación de tablas. Hay muchos lenguajes de consulta que se pueden escribir para realizar una variedad de consultas simples a complejas. Las consultas filtrarán ciertos criterios en función de los datos específicos que se solicita encontrar. También puede automatizar tareas de gestión de datos y realizar cálculos. Esta guía analiza las 10 consultas de MySQL más comunes.
Usemos estas bases de datos de demostración para comprender mejor cómo funciona cada consulta.
Id. de empleado | Nombre | Título |
---|---|---|
1002 | Webster W. | Ejecutivo |
1003 | Lizzy S. | Gerente |
1004 | Oliver T. | Ingeniero de software |
Id. de empleado | Departamento | Edad |
---|---|---|
1002 | RRHH | 36 |
1003 | Ventas | 21 |
1004 | TI | 39 |
SELECCIONAR Todo
Se utiliza una simple consulta SELECT para obtener y enviar todos los datos de una base de datos. Su sintaxis se puede escribir como tal;
Código:
SELECT * FROM Employees;
Resultado:
1002 Webster W. Executive 1003 Lizzy S. Manager 1004 Oliver T. Software Engineer
Para seleccionar todas las columnas disponibles en la tabla, debe usar "*" para indicar que necesita que se devuelva toda la información posible. En segundo lugar, indique la palabra clave FROM para recibir datos de la tabla de la base de datos. Por último, recuerde siempre terminar su declaración con un punto y coma ";" para completar la solicitud correctamente.
SELECCIONAR columna
Para obtener datos de columnas específicas y no todo, simplemente desea indicar el nombre del campo en lugar de usar el asterisco (*).
Código:
SELECT Title FROM Employees;
Resultado:
Title Executive Manager Software Engineer
Al seleccionar varias columnas de una base de datos, deben estar separadas por una coma. Así;
SELECT Title, Name FROM Employees;
cláusula WHERE
Al utilizar la cláusula WHERE en una consulta SELECT, los registros de datos se filtrarán y luego se extraerán los registros que coincidan con las condiciones como resultado.
Código:
SELECT * FROM Employees WHERE EmployeeID = 1004 ;
Resultados:
1004 Oliver T. Software Engineer
La cláusula WHERE puede tener más de una condición que se puede separar usando la palabra clave AND.
CREAR tabla
Esta consulta se puede utilizar para generar una nueva tabla con las columnas que prefiera. Al agregar nombres de columna, asegúrese de especificar su tipo de datos.
Código:
CREATE TABLE EmployeeInfo ( EmployeeId INT, Department VARCHAR(25), Age NUMBER );
Resultados esperados de la tabla:
EmployeeID | Department | Department |
NULL | NULL | NULL |
Una vez que ejecuta el comando CREAR TABLA y lo completa con títulos de columna, la consulta anterior crea una tabla "EmployeeInfo" en la base de datos. Esencialmente, cada columna devolverá NULL porque no hemos insertado ningún valor en particular. Eso nos lleva a nuestra próxima consulta, INSERTAR EN.
INSERTAR EN LA Consulta
Esta es la consulta más común para insertar valores en una o más filas de nuevos registros en una tabla. Podemos completar la tabla EmployeeInfo con algunos datos de muestra;
Código:
INSERT INTO EmployeeInfo (EmployeeID,Department,Age) VALUES (1002, HR , 46), (1003, Finance , 28), (1004, IT , 39);
Resultados de la tabla:
Información del empleado
EmployeeID | Department | Age |
1002 | HR | 46 |
1003 | Finance | 28 |
1004 | IT | 39 |
Al escribir una consulta INSERT INTO, el comando VALUES debe ser parte de la instrucción completa.
Consulta de ACTUALIZACIÓN
Esta palabra clave se usa para cambiar una o más columnas existentes en una tabla. El uso de esta consulta actualizará los registros de la tabla con nuevos datos en función de alguna condición.
Información del empleado
EmployeeID | Department | Age |
1002 | HR | 36 |
1003 | Sales | 21 |
1004 | IT | 39 |
Código:
UPDATE EmployeeInfo SET Age = 22 WHERE EmployeeID = 1003;
Resultados de la tabla:
Información del empleado
EmployeeID | Department | Age |
1002 | HR | 36 |
1003 | Sales | 22 |
1004 | IT | 39 |
Siguiendo el comando ACTUALIZAR, use la palabra clave SET para especificar siempre qué columna(s) elige modificar, luego indique exactamente DÓNDE necesita que se apliquen los datos actualizados.
ELIMINAR DE Consulta
Para eliminar registros de una tabla en función de una o varias condiciones, deberá utilizar la instrucción DELETE FROM. Al usar condiciones, limita la cantidad de filas afectadas por la consulta.
Código:
DELETE FROM Employees WHERE Name = ‘Lizzy’;
Resultados de la tabla:
Empleados
EmployeeID | Name | Title |
1002 | Webster W. | Executive |
1004 | Oliver T. | Software Engineer |
Como se cubrió anteriormente en el artículo; el uso de la condición WHERE determina exactamente dónde solicita que se filtren y ejecuten los datos. Esa consulta es para eliminar todos los registros de la tabla de Empleados que coincidan con el nombre "Lizzy".
Uso de la cláusula GROUP BY, HAVING
La cláusula GROUP BY generalmente se usa siempre con funciones agregadas. El uso de esta palabra clave agrupará el conjunto de resultados por una o más columnas.
La palabra clave HAVING se utiliza para filtrar ese conjunto de resultados. Idealmente, pensaría que se implementaría una cláusula WHERE en su lugar; sin embargo, la cláusula HAVING introduce una condición en las agregaciones.
Información del empleado
EmployeeID | Department | Age |
1002 | HR | 36 |
1003 | Sales | 21 |
1004 | IT | 39 |
Código:
SELECT COUNT(Age), EmployeeID FROM EmployeeInfo GROUP BY EmployeeID HAVING COUNT(Age) > 21;
Resultados:
COUNT(Age) EmployeeID 39 1004 36 1002
Funciones agregadas (SUM, AVG &COUNT)
Hay tres funciones agregadas extremadamente comunes que permiten interpretar los datos de una tabla o ejecutar cálculos.
- COUNT:devuelve el número de filas que coinciden con una columna específica.
- AVG: devuelve el valor promedio de una columna
- SUMA:devuelve la suma de todos los valores en una columna seleccionada.
InformaciónEmpleado
ID de empleado | Departamento | Edad |
1002 | RRHH | 36 |
1003 | Ventas | 21 |
1004 | TI | 39 |
Código para COUNT:
SELECT COUNT(Department) FROM EmployeeInfo;
Resultados:
COUNT(Department): 3
Código para AVG:
SELECT AVG(Age) FROM EmployeeInfo;
Resultados:
AVG(Age): 32
Código para SUMA
SELECT SUM(Age) FROM EmployeeInfo;
Resultados:
SUM(Age): 96
ÚNETE
Las combinaciones se utilizan para unir filas de al menos dos tablas, en función de una columna relacionada entre las tablas. Las uniones de práctica más comunes son INNER, FULL y LEFT.
- INNER Join:combina las filas de diferentes tablas si la condición de unión es verdadera.
- FULL Join:devuelve todas las filas cuando hay una coincidencia en los registros de la tabla izquierda o derecha.
- LEFT Join:recupera todas las filas de la tabla de la izquierda y los registros coincidentes de la tabla de la derecha.
Empleados – Mesa #1 (Izquierda)
ID de empleado | Nombre | Título |
1002 | Webster W. | Ejecutivo |
1003 | Lizzy S. | Gerente |
1004 | Oliver T. | Ingeniero de software |
EmployeeInfo – Tabla #2 (Derecha)
ID de empleado | Departamento | Edad |
1002 | RRHH | 36 |
1003 | Ventas | 21 |
1004 | TI | 39 |
UNIÓN INTERNA Código:
SELECT Employees.Title, EmployeeInfo.Department FROM Employees INNER JOIN EmployeeInfo ON Employees.EmployeeID = Employees.EmployeeID;
Resultados:
Title Department Executive HR Manager Sales Software Engineer IT
ÚNETE COMPLETAMENTE Código:
SELECT * FROM Employees FULL JOIN EmployeeInfo ON Employees.EmployeeID = Employees.EmployeeID;
Resultados:
Tomará todas las filas y columnas de ambas tablas, incluidos los duplicados, y las combinará en una tabla completa.
ÚNETE A LA IZQUIERDA Código:
SELECT Employees.Name, EmployeeInfo.Age FROM Employees LEFT JOIN EmployeeInfo ON Employees.EmployeeID = Employees.EmployeeID;
Resultados:
Name Age Webster W. 36 Lizzy S. 21 Oliver T. 39
La columna "EmployeeID" en la tabla "Employee" se refiere al "EmployeeID" en la tabla "EmployeeInfo", esencialmente indicando que la columna EmployeeID es la relación entre ambas tablas. Las uniones pueden volverse complicadas pero, al mismo tiempo, extremadamente útiles al clasificar una base de datos más grande.
El usuario y la base de datos pueden intercambiar información con éxito básicamente hablando el mismo idioma. Las consultas enumeradas anteriormente son las más utilizadas tanto por principiantes como por expertos. Escribir consultas MySQL se considera la función más frecuente dentro del dominio de la gestión de bases de datos.
Este artículo fue revisado y actualizado en abril de 2022 por Kelsey Perkins.