Sei sulla pagina 1di 6

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Funciones de Agregado en SQL Server 2008


En esta ocasin daremos una breve explicacion algunas funciones de agregado que tenemos en Transact-SQL, utilizando SQL Server 2008, primerio mencionaremos las funciones con las que contamos en Transact-SQL: - Avg - Checksum_agg - Count - Coung_big - Grouping - Grouping_id - Max - Min - Clausula Over - Rowcount_big - Stdev - Stdevp - Sum - Var - Varp.

Que es o que hace una funcion de agregado?


Las funciones de agregado realizan un clculo sobre un conjunto de valores extraidos de una consulta y devuelven un solo valor (por ejemplo una suma de todos los elementos, el promedio, valor mximo, entre otros). Todas las funciones de agregado son deterministas. Esto significa que las funciones de agregado devuelven el mismo valor cada vez que se las llama con un conjunto especfico de valores de entrada. Para obtener ms informacin acerca del determinismo de las funciones. Las funciones de agregado slo se pueden usar como expresiones en: La lista de seleccin de una instruccin SELECT (en una subconsulta o en la consulta externa). Clusulas COMPUTE o COMPUTE BY. Clusulas HAVING.

En esta ocasin, daremos una breve explicacion acompanada de un ejemplo de las siguientes funciones de agregado: - Avg - Count - Max - Min - Sum Para mas consultas y referencias a las otras funciones de agregado mencionadas en este post, visiten este link: http://msdn.microsoft.com/es-es/library/ms173454.aspx
Jorge Marcelo Cupi Veliz 8311038 LP

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

A continuacion presento el diagrama de la base de datos que utilizaremos para realizar la explicacion y ejemplos:

La base de datos mostrada en la parte superior fue generada gracias al Script aportado por la Lic. Celia Tarquino Peralta (celiaept@hotmail.com) de la Universidad Mayor de San Andres.

Jorge Marcelo Cupi Veliz 8311038 LP

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

1. AVG
Esta funcin devuelve el promedio de los valores de un grupo. Los valores NULL se pasan por alto. Utilizaremos la tabla Venta para ver un ejemplo:

Primero observamos que tenemos la columna MONTO, a continuacion obtendremos el promedio de todas las ventas realizadas:

2. Count La funcion COUNT devuelve el nmero de elementos de un grupo. COUNT funciona como la funcin COUNT_BIG. La nica diferencia entre ambas funciones est en los valores devueltos. Mientras que COUNT siempre devuelve un valor de tipo de datos int. COUNT_BIG siempre devuelve un valor de tipo de datos bigint. Utilizaremos la tabla Empleado para ver el ejemplo:

Jorge Marcelo Cupi Veliz 8311038 LP

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

Ahora, obtendremos el numero total de Empleados registrados en la tabla:

Vemos tambien que podemos combinar la funcion COUNT con Distinct, a continuacion contaremos el numero de empleados con distintos CARGOS:

3. MAX Devuelve el valor mximo de la expresin. Utilizaremos la tabla Empleado para ver que empleado tiene el sueldo mayor en la tabla:

Jorge Marcelo Cupi Veliz 8311038 LP

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

4. MIN Devuelve el valor mnimo de la expresin. Utilizaremos la tabla Compra:

Ahora obtendremos la Venta cuyo monto haya sido el menor de todos de entre la tabla:

Jorge Marcelo Cupi Veliz 8311038 LP

Universidad Mayor de San Andrs Facultad de Ciencias Puras y Naturales Carrera de Informtica

5. SUM Devuelve la suma de todos los valores o slo de los valores DISTINCT de la expresin. SUM slo puede utilizarse con columnas numricas. Los valores Null como veremos en el ejemplo se pasan por alto. Utilizaremos nuevamente la tabla Empleado para ver la SUMA de todos los salarios:

Ahora veremos la suma de los salarios:

Jorge Marcelo Cupi Veliz 8311038 LP

Potrebbero piacerti anche