SQL sum Function

Resumen: En este tutorial, aprenderá a usar la función SQL SUM para calcular la suma de todos los valores o valores distintos.

Introducción a la función de suma SQL

la función SUM devuelve la suma de números., The syntax of the SUM() function is as follows:

1
SUM( DISTINCT | ALL numeric_expression)

Unlike other SQL aggregate functions, the SUM() function accepts only the expression that evaluates to numerical values.,

Se puede especificar ALL o DISTINCT modificador en el SUM() función.

  • El modificador DISTINCT instruye a la función SUM() para calcular el total de valores distintos, lo que significa que se eliminan los duplicados.
  • El modificador ALL permite que la función SUM() devuelva la suma de todos los valores, incluidos los duplicados., La función SUM() utiliza el modificador ALL por defecto si no especifica ningún modificador explícitamente.

SQL sum function examples

usaremos la tabla products para nuestros ejemplos en las siguientes secciones.,in conjunction with a GROUP BY clause as the following query:

1
2
3
4
5

SELECT
supplierid, SUM(unitsinstock)
FROM
products
GROUP BY supplierid;

The GROUP BY clause groups the products by suppliers., Para cada grupo, la función SUM() calcula la suma de unidades en stock.,div>

2
3
4
5
6

SELECCIONAR
idproveedor, SUM(unidades en existencia)
DE
productos
GRUPO POR el proveedor
HAVING SUM(unidadesenexistencia) < 50;

Si utiliza un alias de columna para la expresión que contiene la etiqueta SUM() función, puede consultar el alias en el HAVING cláusula en lugar de la expresión., Esto le ayuda a ahorrar tiempo escribiendo la misma expresión dos veces. Además, cuando cambia la expresión, tiene que cambiarla en un solo lugar.

la siguiente consulta produce el mismo resultado que la consulta anterior.,v>

Advanced SQL SUM function examples

You can use the SUM function to answer more challenging business questions such as get top 5 customers by sales as the following query:

1
2
3
4
5
6
7
8
9
10
11
12
13

SELECT
customers.,customerid,
companyname,
(SUM(unitprice * quantity) – SUM (unitprice * quantity) * discount) AS total
FROM
orderdetails
INNER JOIN
orders ON orders.orderid = orderdetails.orderid
INNER JOIN
clientes en clientes.customerid = pedidos.customerid
grupo por clientes.customerid
ORDEN total DESC
LÍMITE de 5

utilizamos la cláusula LIMIT para obtener sólo 5 filas del conjunto de resultados., Tanto MySQL como PostgreSQL admiten la cláusula LIMIT . En Microsoft SQL Server, puede utilizar la etiqueta SELECT TOP como se muestra en la siguiente consulta para lograr el mismo resultado:

1
2
3
4
5
6
7
8
9
10
11
12

SELECT TOP 5
los clientes.,customerid,
companyname,
(SUM(unitprice * quantity) – SUM (unitprice * quantity) * discount) AS total
FROM
orderdetails
INNER JOIN
orders ON orders.orderid = orderdetails.orderid
INNER JOIN
clientes en clientes.customerid = pedidos.customerid
grupo por clientes.,customerid
ORDEN total DESC;

La siguiente consulta se utiliza la etiqueta SUM() función para obtener los 5 productos más vendidos:

1
2
3
4
5
6
7
8
9
10
11

SELECCIONAR
p.productid,
p.,productname,
(SUMA(o.preciounidad * cantidad) – SUMA(o.preciounidad * cantidad) * descuento) total
DE
orderdetails o
INNER JOIN
los productos de p EN p.productid = o.productid
GRUPO p.productid
ORDEN total DESC
LÍMITE de 5;

En este tutorial, hemos demostrado cómo utilizar el SQL SUM función para calcular la suma de los valores.

  • ¿Fue útil este tutorial ?,
  • YesNo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *