Unidad 8. Las consultas de resumen (II)


8.2. Las funciones de agregado

Las funciones de agregado son funciones que permiten obtener un resultado basado en los valores contenidos en una columna de una tabla, son funciones que sólo se pueden utilizar en una consulta de resumen ya que obtienen un 'resumen' de los valores contenidos en las filas de la tabla.

Para utilizar estas funciones podemos escribirlas directamente en la fila Campo: de la cuadrícula como veremos más adelante pero podemos utilizar una forma más cómoda que es seleccionando en la fila Total: de la cuadrícula la opción correspondiente a la función.

A continuación describiremos esas opciones.

La opción Suma calcula la suma de los valores indicados en el campo. Los datos que se suman deben ser de tipo numérico (entero, decimal, coma flotante o monetario...). El resultado será del mismo tipo aunque puede tener una precisión mayor.

La opción Promedio calcula el promedio (la media aritmética) de los valores contenidos en el campo, también se aplica a datos numéricos, y en este caso el tipo de dato del resultado puede cambiar según las necesidades del sistema para representar el valor del resultado.

La opción DesvEst calcula la desviación estándar de los valores contenidos en la columna indicada en el argumento. Si la consulta base (el origen) tiene menos de dos registros, el resultado es nulo.

La opción Var calcula la varianza de los valores contenidos en la columna indicada en el argumento. Si la consulta base (el origen) tiene menos de dos registros, el resultado es nulo.

Es interesante destacar que el valor nulo no equivale al valor 0, las funciones de resumen no consideran los valores nulos mientras que consideran el valor 0 como un valor, por lo tanto en el promedio y la desviación estándar los resultados no serán los mismos con valores 0 que con valores nulos.

Las opciones Mín y Max determinan los valores menores y mayores respectivamente de la columna. Los valores de la columna pueden ser de tipo numérico, texto o fecha. El resultado de la función tendrá el mismo tipo de dato que la columna. Si la columna es de tipo numérico Mín devuelve el valor menor contenido en la columna, si la columna es de tipo texto Mín devuelve el primer valor en orden alfabético, y si la columna es de tipo fecha, Mín devuelve la fecha más antigua y Max la fecha más posterior.

Las opciones Primero y Último se utilizan para obtener el primer y último registro del grupo sobre el que se realizan los cálculos. El orden lo determina el orden cronológico en el que se escribieron los registros. Ordenar los registros no tiene ningún efecto sobre estas opciones.

La opción Cuenta cuenta el número de valores que hay en la columna, los datos de la columna pueden ser de cualquier tipo, y la función siempre devuelve un número entero. Si la columna contiene valores nulos esos valores no se cuentan, si en la columna aparece un valor repetido, lo cuenta varias veces.

Para que cuente en número de registros hay que utilizar la función Cuenta(*) devuelve el número de filas por lo tanto contará también los valores nulos. En este caso tenemos que seleccionar la opción Expresión y escribirlo así:

Consulta en cuyo campo  encontramos la expresión: Expr1: Cuenta(*)

8.3. Agrupar registros

Hasta ahora las consultas de resumen que hemos visto utilizan todas las filas de la tabla y producen una única fila resultado.

La opción AgruparPor permite definir columnas de agrupación. Una consulta de resumen sin columnas de agrupación obtiene una única fila resultado y los cálculos se realizan sobre todos los registros del origen.

Cuando se incluye una columna de agrupación Access forma grupos con todos los registros que tienen el mismo valor en la columna de agrupación y cada grupo así formado genera una fila en el resultado de la consulta y además todos los cálculos definidos se realizan sobre los registros de cada grupo. De esta forma se pueden obtener subtotales.

Por ejemplo queremos saber cuántos alumnos tenemos en cada población. Tenemos que indicar que queremos contar los registros de la tabla Alumnado pero antes agrupándolos por el campo Poblacion. De esta manera la función cuenta() la calculará sobre cada grupo de registros (los alumnos de la misma población). La consulta quedaría así:

Población con total "Agrupar por" y campo con Expr1:Cuenta(*), cuyo total es Cuenta

Los campos de tipo memo u OLE no se pueden definir como columnas de agrupación.

Se pueden agrupar las filas por varias columnas, en este caso se agrupan los registros que contienen el mismo valor en cada una de las columnas de agrupación.

Todas las filas que tienen valor nulo en la columna de agrupación, pasan a formar un único grupo.


Octubre-2010
Pág. 8.2

Atrás  Inicio  Adelante




Curso de Access 2013
.