Comando SQL GROUP BY

, Author

Puede ver el comando Count antes de usar el comando GROUP BY aquí. El comando GROUP BY creará grupos en el nombre del campo especificado y contará el número de registros en los grupos. Este es un comando muy útil.
También podemos utilizar el comando WHERE junto con el comando GROUP BY en las tablas Mysql.

SELECT count(*) as total_records, class FROM `student` group by class

Esto mostrará el total de registros en cada clase. Así

total_registros clase
1 Ocho
3 Cinco
9 Cuatro
2 Nueve
10 Siete
7 Seis
3 Tres

Intentemos obtener el número total de registros de niñas en cada clase utilizando la consulta GROUP BY. Aquí queremos filtrar nuestra consulta sólo para las niñas, así que tenemos que usar una cláusula WHERE para restringir los registros usando el campo sexo. Esta es la consulta.

SELECT class,count( * ) AS total_records FROM `student` WHERE sex='female' GROUP BY class

La salida está aquí

clase registros_totales
Cuatro 5
Nueve 1
Siete 5
Seis 5
Tres 1

Registros duplicados

Podemos averiguar los registros duplicados en una tabla utilizando el comando group by. Vamos a crear otra tabla student2_1 utilizando los mismos datos y añadiendo algunos registros duplicados. Aquí está la consulta

SELECT name, COUNT(id) AS no from student2_1 group by name having no > 1

El resultado está aquí .

nombre no
Arnold 2
Fila de Tade 3

Puedes descargar el volcado SQL de esta tabla stduent2_1 con los datos duplicados añadidos al final de esta página.

Cómo eliminar registros duplicados

Usando group by en un campo de fecha podemos generar una lista sobre el año natural, el año financiero, el mes

Código de ejemplo

Aquí hay un código de ejemplo para entender cómo usar la consulta group by usando el script PHP y PDO.
PARTE II: Intentaremos aplicar el comando group by a más de un campo. Para ello crearemos una nueva tabla y la discutiremos en detalle. Siguiente Parte II
Descarga el SQL DUMP de esta tabla de estudiantes
Descarga el SQL DUMP de la tabla stduent2_1

Este artículo está escrito por el equipo de plus2net.com.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.