La función GROUP BY se utiliza para juntar filas de resultados que coincidan en el valor de alguna columna seleccionada.
Sintaxis GROUP BY
SELECT columna, funcion(columna)
FROM tabla
GROUP BY columna
Ejemplo de uso de GROUP BY
Dada la siguiente tabla ‘pedidos’
id | pedido | cliente | precio |
---|---|---|---|
1 | p1 | RUIZ | 100 |
2 | p2 | PEREZ | 300 |
3 | p3 | GOMEZ | 250 |
4 | p4 | RUIZ | 490 |
5 | p5 | GOMEZ | 60 |
SELECT cliente, SUM(precio)
FROM pedidos
GROUP BY cliente
El resultado será el siguiente:
cliente | SUM(precio) |
---|---|
RUIZ | 590 |
PEREZ | 300 |
GOMEZ | 310 |
El cliente ‘RUIZ’ se repite 2 veces, se suman sus valores para la columna ‘precio’ 490 + 100 = 590
El cliente ‘PEREZ’ se queda igual, con el valor para ‘precio’ de 300.
El cliente ‘GOMEZ’ se repite 2 veces, y se suman sus valores para la columna ‘precio’ 250 + 60 = 310
Nota: Se puede agrupar también por varias columnas.
GROUP BY columna1, columna2