Cálculo de valores de totales

Puede utilizar las funciones de totales de SQL para calcular los valores basados en columnas enteras de datos. Los valores calculados pertenecen sólo a las filas que satisfacen la cláusula WHERE y, por lo tanto, están seleccionadas.

Una función de totales es una operación que obtiene su resultado de la utilización de valores de una o más filas. Una función de totales también se conoce con el nombre de función de columna. El argumento de una función de totales es un conjunto de valores que se obtienen de una expresión.

Puede utilizar las siguientes funciones de totales:

SUM
Devuelve el valor total.
MIN
Devuelve el valor mínimo.
AVG
Devuelve el valor medio.
MAX
Devuelve el valor máximo.
COUNT
Devuelve el número de filas seleccionadas.
COUNT_BIG
Devuelve el número de filas o de valores de un conjunto de filas o de valores. El resultado puede ser mayor que el valor máximo de un entero.
XMLAGG
Devuelve una concatenación de elementos XML de una colección de elementos XML.

Tan solo puede utilizar SUM y AVG con números. Puede utilizar MIN, MAX, COUNT y COUNT_BIG con cualquier tipo de datos incorporados.

ejemplos

Iniciar información de la interfaz de programación de uso general.
Ejemplo 1
Esta consulta calcula, para el departamento A00, la suma de los salarios de los empleados, el salario mínimo, medio y máximo y el número de empleados del departamento:
SELECT SUM(SALARY) AS SUMSAL,
       MIN(SALARY) AS MINSAL,
       AVG(SALARY) AS AVGSAL,
       MAX(SALARY) AS MAXSAL,
       COUNT(*) AS CNTSAL
  FROM EMP
  WHERE DEPT = 'A00';

La tabla de resultados es similar a la siguiente:

   SUMSAL       MINSAL             AVGSAL       MAXSAL     CNTSAL
=========     ========     ==============     ========     ======
128500.00     29250.00     42833.33333333     52750.00          3 
Ejemplo 2
Puede utilizar (*) en las funciones COUNT y COUNT_BIG. En este ejemplo, COUNT (*) devuelve las filas que Db2 procesa basándose en la cláusula WHERE. Esta consulta cuenta el número de empleados que se describen en la tabla EMP:
SELECT COUNT(*)
  FROM EMP;
Ejemplo 3
Puede utilizar DISTINCT con las funciones SUM, AVG, COUNT y COUNT_BIG. DISTINCT indica que la función seleccionada tan solo funciona en los valores exclusivos de una columna. Esta consulta cuenta las distintas ocupaciones de la tabla EMP:
SELECT COUNT(DISTINCT JOB)
  FROM EMP;

Las funciones de totales como COUNT ignoran los nulos en los valores en los que operan. El ejemplo anterior cuenta los valores de ocupaciones diferentes que no son nulos.

Nota : No utilice DISTINCT con las funciones MAX y MIN porque su uso no afecta al resultado de dichas funciones.
Finalizar la información de la interfaz de programación de uso general.