Você está na página 1de 9

FUNCIONES DE AGREGADOS EN SQL

Con las funciones de agregado de SQL, se pueden determinar varias


estadísticas relacionadas con conjuntos de valores. Estas funciones se
pueden utilizar en las consultas, para agregar expresiones en la
propiedad SQL de un objeto QueryDef o al crear un objeto de
conjunto de registros basado en una consulta SQL.

1. La función SUM (Sumas O Totales):

a. Para sumar las cantidades numéricas contenidas en un


determinado campo, hemos de utilizar la función SUM, cuya sintaxis
es la siguiente:
SUM (expresión). Donde 'expresión' puede representar un campo o
una operación con algún campo. La función SUM retorna el resultado
de la suma de la expresión indicada en todos los registros que son
afectados por la consulta.
b. Devuelve la suma de un conjunto de valores de un campo
específico de una consulta
Sum (expr): El marcador de posición expr representa una expresión
de cadena (expresión de cadena: expresión que evalúa una secuencia
de caracteres contiguos. Los elementos de la expresión pueden ser:
funciones que devuelven una cadena o un tipo Variant (VarType 8) de
cadena; un tipo literal, constante, variable o Variant de cadena.) que
identifica el campo que contiene los datos numéricos que desea
sumar o una expresión que realiza un cálculo utilizando los datos de
ese campo. Los operandos de expr pueden incluir el nombre de un
campo de tabla, una constante o una función (que puede ser
intrínseca o definida por el usuario, pero no puede ser ninguna de las
otras funciones de agregado de SQL).

Ejemplo:

SELECT sum(cantidad*valorUnitario) FROM producto;

2. Funciones MIN y MAX (Valores Mínimos Y Máximos):

a. Es posible conocer el valor mínimo o máximo de un campo,


mediante las funciones MIN y MAX, cuyas sintaxis son las
siguientes:
* MIN(expresión)
* MAX(expresión)
b. Devuelven el mínimo o el máximo de un conjunto de valores de un
campo especificado en una consulta.

Puede utilizar Mín y Máx para determinar los valores superiores e


inferiores de un campo basándose en la agregación especificada o
agrupación.

c. La función agregada de SQL MAX nos permite seleccionar el más


alto (máximo) de un cierto valor para la columna.

Ejemplos:

• SELECT max(valorUnitario) FROM producto;

• SELECT min(valorUnitario)FROM producto;

3. La función AVG (Promedios O Medias Aritméticas):

a. Para averiguar el promedio de unas cantidades utilizaremos la


función AVG, cuya sintaxis es la siguiente: AVG (expresión).
La función AVG retorna el promedio o media aritmética de la
expresión especificada, en todos los registros afectados por la
consulta. Esto es lo mismo que realizar una suma (SUM) y, después,
dividir el resultado entre el número de registros implicados.
Ejemplo:
• SELECT avg (cantidad) FROM producto;

b. Calcula la media aritmética de un conjunto de valores de un campo


específico de una consulta.

Sintaxis

Prom(expr)

El promedio calculado por Prom es la media aritmética (la suma de


los valores dividida entre el número de valores). Puede utilizar Prom,
por ejemplo, para calcular el promedio de los gastos de envío.

La función Prom (Avg) no incluye ningún campo Null (Null: valor que
puede especificarse en un campo o utilizarse en expresiones o
consultas para indicar datos desconocidos o ausentes. En Visual
Basic, la palabra clave Null indica un valor Null. Algunos campos,
como los de clave principal, no pueden contener Null.) en el cálculo.

4. Función cuenta (Count)

Calcula el número de registros que devuelve una consulta.

Sintaxis

Cuenta(expr)

Puede utilizar Cuenta para contar el número de registros de una


consulta base. Por ejemplo, puede utilizar Cuenta para contar el
número de pedidos enviados a un determinado país.

Aunque expr puede realizar el cálculo de un campo, Cuenta cuenta


simplemente el número de registros, sin importar los valores que
estén almacenados en los mismos.

Ejemplo:

• SELECT count(nombre) FROM producto;

5. Función desviación estándar ( StDev, StDevP)

Devuelve estimaciones de la desviación estándar para la población (el


total de los registros de la tabla) o una muestra de la población
representada (muestra aleatoria). Su sintaxis es:
StDev(expr)
StDevP(expr)

En donde expr representa el nombre del campo que contiene los


datos que desean evaluarse o una expresión que realiza un cálculo
utilizando los datos de dichos campos. Los operandos de expr pueden
incluir el nombre de un campo de una tabla, una constante o una
función (la cual puede ser intrínseca o definida por el usuario pero no
otras de las funciones agregadas de SQL).

StDevP evalúa una población, y StDev evalúa una muestra de la


población. Si la consulta contiene menos de dos registros (o ningún
registro para StDevP), estas funciones devuelven un valor Null (el cual
indica que la desviación estándar no puede calcularse).

Ejemplo:

SELECT stdev(valorUnitario) FROM producto;

6. Función Var, VarP:

Devuelve una estimación de la varianza de una población (sobre el


total de los registros) o una muestra de la población (muestra
aleatoria de registros) sobre los valores de un campo. Su sintaxis es:

Var(expr)
VarP(expr)

VarP evalúa una población, y Var evalúa una muestra de la población.


Expr el nombre del campo que contiene los datos que desean
evaluarse o una expresión que realiza un cálculo utilizando los datos
de dichos campos. Los operandos de expr pueden incluir el nombre
de un campo de una tabla, una constante o una función (la cual
puede ser intrínseca o definida por el usuario pero no otras de las
funciones agregadas de SQL)

Si la consulta contiene menos de dos registros, Var y VarP devuelven


Null (esto indica que la varianza no puede calcularse). Puede utilizar
Var y VarP en una expresión de consulta o en una Instrucción SQL.

Devuelven un valor de campo del primer o del último registro en el


conjunto de resultados devueltos por una consulta.

7. Function First, last:

First(expr)

Last(expr)

El marcador de posición expr representa una expresión de cadena


que identifica el campo que contiene los datos que desea utilizar o
una expresión que realiza un cálculo utilizando los datos de ese
campo. Los operandos de expr pueden incluir el nombre de un campo
de tabla, una constante o una función (que puede ser intrínseca o
definida por el usuario, pero no puede ser ninguna de las otras
funciones de agregado de SQL).

Agrupamiento de Registros:
1. GROUP BY

Combina los registros con valores idénticos, en la lista de campos


especificados, en un único registro. Para cada registro se crea un
valor sumario si se incluye una función SQL agregada, como por
ejemplo Sum o Count, en la instrucción SELECT. Su sintaxis es:

GROUP BY es opcional. Los valores de resumen se omiten si no existe


una función SQL agregada en la instrucción SELECT. Los valores Null
en los campos GROUP BY se agrupan y no se omiten. No obstante, los
valores Null no se evalúan en ninguna de las funciones SQL
agregadas.

Se utiliza la cláusula WHERE para excluir aquellas filas que no desea


agrupar, y la cláusula HAVING para filtrar los registros una vez
agrupados.

A menos que contenga un dato Memo u Objeto OLE , un campo de la


lista de campos GROUP BY puede referirse a cualquier campo de las
tablas que aparecen en la cláusula FROM, incluso si el campo no esta
incluido en la instrucción SELECT, siempre y cuando la instrucción
SELECT incluya al menos una función SQL agregada.

Todos los campos de la lista de campos de SELECT deben o bien


incluirse en la cláusula GROUP BY o como argumentos de una función
SQL agregada.

Una vez que GROUP BY ha combinado los registros, HAVING muestra


cualquier registro agrupado por la cláusula GROUP BY que satisfaga
las condiciones de la cláusula HAVING.

2. HAVING es similar a WHERE, determina qué registros se


seleccionan. Una vez que los registros se han agrupado utilizando
GROUP BY, HAVING determina cuáles de ellos se van a mostrar.
WEBGRAFIA

1. http://basededatos.umh.es/sql/sql04.htm#SUM
2. http://basededatos.umh.es/sql/sql04.htm#COUNT
3. http://basededatos.umh.es/sql/sql04.htm#GROUPBY

4. http://www.mailxmail.com/curso/informatica/sql/capitulo28.htm

5. http://office.microsoft.com/es-es/access/HA012315013082.aspx

6. www.sql-tutorial.net/SQL-MAX

EJERCICIO
CONSULTAS

1. Seleccionar el producto cuyo valor sea mayor 3000

SELECT nombre, min (valorUnitario)

FROM productos

GROUP BY nombre, valorUnitario

HAVING min (valorUnitario)<3000;

2. Seleccionar el producto cuyo valor sea mínimo 3000

SELECT nombre, min (valorUnitario)

FROM productos

GROUP BY nombre, valorUnitario

HAVING min (valorUnitario)<3000;


3. Determinar el promedio de productos que existen.

SELECT avg(cantidad)

FROM productos;

4. Determinar la desviación estándar del producto.

SELECT stdev(valorUnitario)

FROM productos;

5. Establecer el valor total del STOCK.

SELECT sum(cantidad*valorUnitario)

FROM productos;
6. Contar cuantos tipos de productos existen.

SELECT count(cantidad)

FROM productos;

Você também pode gostar