sql >> Base de Datos >  >> RDS >> Mysql

Principales consultas comunes de MySQL

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.