in

SQL | GRUPO POR – GeeksforGeeks

gfg 200x200 min

La instrucción GROUP BY en SQL se utiliza para organizar datos idénticos en grupos con la ayuda de algunas funciones. es decir, si una columna en particular tiene los mismos valores en diferentes filas, organizará estas filas en un grupo.

Puntos importantes:

  • La cláusula GROUP BY se usa con la instrucción SELECT.
  • En la consulta, la cláusula GROUP BY se coloca después de la cláusula WHERE.
  • En la consulta, la cláusula GROUP BY se coloca antes de la cláusula ORDER BY si se usa alguna.

Sintaxis:

SELECT column1, function_name(column2)
FROM table_name
WHERE condition
GROUP BY column1, column2
ORDER BY column1, column2;

function_name: Name of the function used for example, SUM() , AVG().
table_name: Name of the table.
condition: Condition used.

Tabla de muestra:

Empleado

mesa

Estudiante

Captura de pantalla (54)
Ejemplo:

  • Agrupar por columna única: Grupo Por medio de una sola columna, colocar todas las filas con el mismo valor de esa columna en particular en un grupo. Considere la consulta como se muestra a continuación:
    SELECT NAME, SUM(SALARY) FROM Employee 
    GROUP BY NAME;
    

    La consulta anterior producirá el siguiente resultado:
    table_out
    Como puede ver en el resultado anterior, las filas con NOMBRES duplicados se agrupan bajo el mismo NOMBRE y su SALARIO correspondiente es la suma del SALARIO de las filas duplicadas. La función SUM () de SQL se usa aquí para calcular la suma.

  • Agrupar por varias columnas: Agrupar por columnas múltiples es decir, por ejemplo, GROUP BY column1, column2. Esto significa colocar todas las filas con los mismos valores de ambas columnas. columna1 y columna2 en un grupo. Considere la siguiente consulta:
    SELECT SUBJECT, YEAR, Count(*)
    FROM Student
    GROUP BY SUBJECT, YEAR;
    

    Producción:
    Captura de pantalla (55)
    Como puede ver en el resultado anterior, los estudiantes con el mismo SUJETO y AÑO se colocan en el mismo grupo. Y aquellos cuyo único SUJETO es el mismo pero no AÑO pertenecen a diferentes grupos. Así que aquí hemos agrupado la tabla según dos columnas o más de una columna.

TENIENDO Cláusula

Sabemos que la cláusula WHERE se usa para colocar condiciones en columnas, pero ¿qué pasa si queremos colocar condiciones en grupos?

Aquí es donde entra en uso la cláusula HAVING. Podemos usar la cláusula HAVING para colocar condiciones para decidir qué grupo será parte del conjunto de resultados final. Además, no podemos usar las funciones agregadas como SUM (), COUNT (), etc.con la cláusula WHERE. Entonces tenemos que usar la cláusula HAVING si queremos usar alguna de estas funciones en las condiciones.

Sintaxis:

SELECT column1, function_name(column2)
FROM table_name
WHERE condition
GROUP BY column1, column2
HAVING condition
ORDER BY column1, column2;

function_name: Name of the function used for example, SUM() , AVG().
table_name: Name of the table.
condition: Condition used.

Ejemplo:

SELECT NAME, SUM(SALARY) FROM Employee 
GROUP BY NAME
HAVING SUM(SALARY)>3000; 

Producción:
Captura de pantalla (56)
Como puede ver en la salida anterior, solo un grupo de los tres grupos aparece en el conjunto de resultados, ya que es el único grupo donde la suma de SALARY es mayor que 3000. Por lo tanto, hemos usado la cláusula HAVING aquí para colocar esta condición como la Se requiere que la condición se coloque en grupos, no en columnas.

Este artículo es una contribución de Duro Agarwal. Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando contrib.geeksforgeeks.org o envíe su artículo por correo electrónico a [email protected] Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema discutido anteriormente.

¡Atención lector! No dejes de aprender ahora. Aprenda SQL para entrevistas usando Curso de SQL por GeeksforGeeks.

Deja una respuesta

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

apple touch icon@2

vim – ¿Algún editor similar a VI en Windows?

700px Tree of life

Anfibios vs reptiles: diferencia y comparación