# Sum - función de gráfico

Sum() calcula el total de valores especificados por la expresión o campo en los datos agregados.

Sintaxis:

Sum([{SetExpression}] [DISTINCT] [TOTAL [&lt;fld {,fld}&gt;]] expr)

Tipo de datos que devuelve: numérico

Argumentos:

* expr: La expresión o el campo que contiene los datos que se han de medir.

* SetExpression: Por defecto, la función de agregación agregará sobre el conjunto de registros posibles definidos por la selección. Se puede definir un conjunto alternativo de registros mediante una expresión de análisis de conjuntos.

* DISTINCT: Si la palabra DISTINCT aparece antes que los argumentos de la función, se descartarán los duplicados resultantes de evaluar los argumentos de la función.

  Nota informativaAunque el cualificador DISTINCT es compatible, debe utilizarlo con cuidado, ya que puede hacer que el lector piense, por error, que se muestra un valor total cuando se han omitido algunos datos.

* TOTAL: Si la palabra TOTAL aparece antes de los argumentos de la función, el cálculo se realiza con todos los valores posibles dadas las selecciones actuales, y no solo con los que pertenecen al valor dimensional actual, es decir, ignora las dimensiones del gráfico. El cualificador TOTAL puede ir seguido de una lista con uno o más nombres de campo entre paréntesis angulares &lt;fld&gt;. Estos nombres de campo deberían ser un subgrupo de las variables de dimensión del gráfico.

  [Definir el ámbito de agregación](https://help.qlik.com/es-ES/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/define-aggregation-scope.htm)

Ejemplos:

Ejemplos y resultados

| Ejemplo | Resultado |
| --- | --- |
| `Sum(UnitSales)` | 38. El total de los valores en `UnitSales`. |
| `Sum(UnitSales*UnitPrice)` | 505. El total de `UnitPrice` multiplicado por `UnitSales` agregado. |
| `Sum(TOTAL UnitSales*UnitPrice)` | 505 para todas las filas de la tabla, así como el total, porque el cualificador TOTAL implica que el resultado de la suma sigue siendo 505, descartando las dimensiones del gráfico. |
| Seleccione`  Customer B `.<br><br>`Sum({1} TOTAL UnitSales*UnitPrice)` | 505, independientemente de la selección realizada, ya que la expresión Set Analysis {1} define el conjunto de registros que se debe evaluar como ALL, sea cual sea la selección efectuada. |

**Datos utilizados en los ejemplos:**

`ProductData:` `LOAD * inline [` `Customer|Product|UnitSales|UnitPrice` `Astrida|AA|4|16` `Astrida|AA|10|15` `Astrida|BB|9|9` `Betacab|BB|5|10` `Betacab|CC|2|20` `Betacab|DD||25` `Canutility|AA|8|15` `Canutility|CC||19` `] (delimiter is '|');`

Datos de ejemplo en forma de tabla

| Customer | Product | UnitSales | UnitPrice |
| --- | --- | --- | --- |
| Astrida | AA | 4 | 16 |
| Astrida | AA | 10 | 15 |
| Astrida | BB | 9 | 9 |
| Betacab | BB | 5 | 10 |
| Betacab | CC | 2 | 20 |
| Betacab | DD | - | 25 |
| Canutility | AA | 8 | 15 |
| Canutility | CC | - | 19 |

## Más información

* [Análisis de conjuntos y expresiones de conjunto](https://help.qlik.com/es-ES/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/SetAnalysis/set-analysis-expressions.htm)
* [Definir el ámbito de agregación](https://help.qlik.com/es-ES/qlikview/September2025/Subsystems/Client/Content/QV_QlikView/ChartFunctions/define-aggregation-scope.htm)