SUM
Devuelve la suma de los valores de una expresión en un grupo de filas.
PostgreSQL 17.9
SUM([DISTINCT] expression)- [ ]parte opcional
- DISTINCT
- Sumar solo los valores únicosPalabra claveOpcional
- expression
- Expresión numérica cuyos valores se sumannumeric
Valor devuelto
Número: bigint para smallint e integer, numeric para bigint y numeric, el mismo tipo para real y double precision; los NULL se ignoran; con un conjunto vacío, NULL y no 0
Ejemplos
Suma de todos los pagos
PostgreSQL 17.9
SELECT SUM(amount * unit_price) AS total
FROM Payments;Gastos de cada miembro de la familia
PostgreSQL 17.9
SELECT family_member,
SUM(amount * unit_price) AS spent
FROM Payments
GROUP BY family_member
ORDER BY family_member;Conjunto de filas vacío
PostgreSQL 17.9
SELECT SUM(unit_price) AS total
FROM Payments
WHERE unit_price < 0;Detalles
Para obtener 0 con un conjunto vacío, envuelve el resultado en COALESCE: COALESCE(SUM(amount), 0). Para sumar solo una parte de las filas del grupo, usa FILTER (WHERE ...).