Cuando hay una gran cantidad de datos, a menudo vemos la posibilidad de manipularlos de acuerdo con nuestros requisitos. La cláusula GROUP BY es una de esas , utilizado para agrupar los datos en función de unas pocas columnas o de condiciones. En este artículo sobre la declaración GROUP BY de SQL, discutiré algunas formas de usar las declaraciones GROUP BY en la siguiente secuencia:
Antes de pasar a los ejemplos sobre cómo usar la cláusula GROUP BY, comprendamos qué es GROUP BY en SQL y su sintaxis.
Sentencia GROUP BY de SQL
Esta declaración se utiliza para agrupar registros que tienen los mismos valores. La instrucción GROUP BY se usa a menudo con las funciones agregadas para agrupar los resultados por una o más columnas.Aparte de esto, la cláusula GROUP BY también se usa con la cláusula HAVING y para agrupar el conjunto de resultados según las condiciones.
SQL GROUP BY sintaxis
SELECCIONE Columna1, Columna2, ..., ColumnaN DE NombreTabla DONDE Condición AGRUPAR POR Nombre (s) de columna ORDENAR POR Nombre (s) de columna
Aquí, puede agregar las funciones agregadas antes de los nombres de las columnas, y también una cláusula HAVING al final de la declaración para mencionar una condición.A continuación, en este artículo sobre SQL GROUP BY, entendamos cómo implementar esta declaración.
Ejemplos:
Para su mejor comprensión, he dividido los ejemplos en las siguientes secciones:
Voy a considerar la siguiente tabla para explicarte los ejemplos:
EmpID | EmpName | EmpEmail | Número de teléfono | Salario | Ciudad |
1 | Nidhi | nidhi@sample.com | 9955669999 | 50000 | Mumbai |
2 | Anay | anay@sample.com | 9875679861 | 55000 | Poner |
3 | Rahul | rahul@sample.com | 9876543212 | 35000 | Delhi |
4 | Sonia | sonia@sample.com | 9876543234 | 35000 | Delhi |
5 | Akash | akash@sample.com | 9866865686 | 25000 | Mumbai |
Echemos un vistazo a cada uno de ellos.
Utilice SQL GROUP BY en una sola columna
Ejemplo:
Escribe una consulta para recuperar el número de empleados en cada ciudad.
SELECCIONAR CONTADOR (EmpID), Ciudad DE Empleados GRUPO POR Ciudad
Salida:
Verá el siguiente resultado:
Recuento (EmpID) | Ciudad |
2 | Delhi |
2 | Mumbai |
1 diferencia entre extensiones e implementos | Poner |
Utilice SQL GROUP BY en varias columnas
Ejemplo:
Escriba una consulta para recuperar la cantidad de empleados que tienen diferentes salarios en cada ciudad.
SELECCIONE Ciudad, Salario, Recuento (*) DE Empleados GRUPO POR Ciudad, Salario
Salida:
La tabla tendrá los siguientes datos:
Ciudad | Salario | Contar(*) |
Delhi | 35000 | 2 |
Mumbai | 25000 | 1 |
Mumbai | 50000 | 1 |
Poner | 55000 | 1 |
Utilice SQL GROUP BY con ORDER BY
Cuando usamos la sentencia GROUP BY de SQL con el Cláusula ORDER BY , los valores se ordenan en orden ascendente o descendente.
Ejemplo:
Escriba una consulta para recuperar el número de empleados en cada ciudad, ordenados en orden descendente.
SELECT COUNT (EmpID), City FROM Empleados GROUP BY City ORDER BY COUNT (EmpID) DESC
Salida:
La tabla tendrá los siguientes datos:
Recuento (EmpID) | Ciudad |
2 | Delhi |
2 | Mumbai |
1 | Poner |
Utilice SQL GROUP BY con la cláusula HAVING
La instrucción SQL GROUP BY se utiliza con la cláusula 'HAVING' para mencionar las condiciones de los grupos.Además, dado que no podemos usar las funciones agregadas con la cláusula WHERE, tenemos que usar la cláusula 'HAVING' para usar las funciones agregadas con GROUP BY.
Ejemplo:
Escriba una consulta para recuperar el número de empleados en cada ciudad, con salario> 15000
SELECCIONE CONTADOR (EmpID), Ciudad DE Empleados GRUPO POR Ciudad QUE TIENEN SALARIO> 15000
Salida:
Dado que todos los registros de la tabla Empleado tienen un salario> 15000, veremos la siguiente tabla como salida:
Recuento (EmpID) | Ciudad |
2 | Delhi |
2 | Mumbai |
1 | Poner |
Utilice GROUP BY con JOINS
son SQL declaraciones utilizadas para combinar filas de dos o más tablas, basadas en una columna relacionada entre esas tablas. Podemos usar la declaración GROUP BY de SQL para agrupar el conjunto de resultados en función de una columna / columnas.Considere las tablas siguientes para ejecutar las sentencias JOIN con la cláusula GROUP BY de SQL.
Tabla de proyectos:
Projecto ID | EmpID | Identificación del cliente | ProjectDate |
2345 | 1 | 4 | 26-01-2019 |
9876 | 2 | 5 | 28-02-2019 |
3456 | 3 | 6 | 12-03-2019 |
Tabla de clientes:
Identificación del cliente | Nombre del cliente |
4 | Sanjana |
5 | Rohan |
6 | Arun |
Ejemplo
Escriba una consulta para enumerar la cantidad de proyectos solicitados por cada cliente:
SELECT Clients.ClientName, COUNT (Projects.ProjectID) AS RequestedProjects FROM Projects LEFT JOIN Clients ON Projects.ProjectID = Clients.ProjectID GROUP BY ClientName
Salida:
La tabla tendrá los siguientes datos:
Nombre del cliente | Proyectos solicitados |
Arun | 1 |
Rohan | 1 |
Sanjana | 1 |
Con eso, llegamos al final del artículo SQL GROUP BY. Mira esto por Edureka, una empresa de aprendizaje en línea de confianza con una red o f más de 250.000 alumnos satisfechos repartidos por todo el mundo. Este curso lo capacita en los conceptos básicos y las herramientas y técnicas avanzadas para administrar datos y administrar la base de datos MySQL. Incluye aprendizaje práctico sobre conceptos como MySQL Workbench, MySQL Server, modelado de datos, conector MySQL, diseño de bases de datos, línea de comandos MySQL, funciones MySQL, etc. Al final de la capacitación, podrá crear y administrar su propia base de datos MySQL y administrar datos.
Tienes una pregunta para nosotros? Menciónelo en la sección de comentarios de este artículo “SQL GROUP BY” y nos comunicaremos con usted lo antes posible.