ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Consultas Y Resumenes En SQL

derleylda22 de Octubre de 2012

493 Palabras (2 Páginas)624 Visitas

Página 1 de 2

CONSULTAS RESUMEN

OBJETIVOS DEL TEMA:

• Realizar consultas basadas en datos calculados globalmente dentro de

una tabla

1.- CONSULTAS RESUMEN:

Es usual querer saber cuantos pedidos tiene un cliente en un periodo de

tiempo, cuál ha sido el promedio de ventas de un proveedor en un año, etc,

SQL proporciona una serie de operadores que permiten realizar estas

operaciones. Los Operadores Agregados son :

• AVG : Promedio de los valores seleccionados

• COUNT : Total de valores seleccionados

• SUM : Suma de valores seleccionados

• MIN : El valor mínimo de los valores seleccionados

• MAX : El valor máximo de los valores seleccionados

que toman el nombre de un atributo como argumento. El valor del operador

agregado se calcula sobre todos los valores de la columna especificada en la

tabla completa. Si se especifican grupos en la consulta, el cálculo se hace sólo

sobre los valores de cada grupo, es decir SQL nos permite particionar las

tuplas de una tabla en grupos. En estas condiciones, los operadores agregados

descritos antes pueden aplicarse a los grupos (es decir, el valor del operador

agregado no se calculan sobre todos los valores de la columna especificada,

sino sobre todos los valores de un grupo. El operador agregado se calcula

individualmente para cada grupo).

El particionamiento de las tuplas en grupos se hace utilizando las

palabras clave GROUP BY seguidas de una lista de atributos que definen los

grupos. Si tenemos GROUP BY A1, ..., Ak habremos particionado la relación

en grupos, de tal modo que dos tuplas son del mismo grupo si y sólo si tienen

el mismo valor en sus atributos A1, ..., Ak.

En el siguiente ejemplo vamos a mostrar para cada cliente el número

total de pedidos, el importe total, el importe medio de cada pedido, así como el

pedido de mayor importe y menor importe. La consulta sería;

SELECT CLIENTE.APELLIDOS, COUNT( PEDIDO.IMPORTE )

TOTAL_PEDIDOS, SUM( PEDIDO.IMPORTE ) SUMA_IMPORTES, AVG(

CAST(PEDIDO.IMPORTE AS FLOAT)) PROMEDIO, MAX(

PEDIDO.IMPORTE ) MAXIMO, MIN( PEDIDO.IMPORTE) MINIMO

FROM CLIENTE

LEFT OUTER JOIN PEDIDO ON (PEDIDO.DNI = CLIENTE.DNI)

GROUP BY CLIENTE.APELLIDOS

ORDER BY CLIENTE.APELLIDOS;

APELLIDOS TOTAL_PEDIDOS SUMA_IMPORTE PROMEDIO MAXIMO MINIMO

---------------- ------------- ------------ -------- ------ ------

ARIAS FERNANDEZ 1 37.0 37.0 37.0 37.0

JIMENO DIAZ 1 88.25 88.25 88.25 88.25

JIMENO ZOLA 0

PEREZ GARCIA 3 389.78 129.9266 201.55 65.23

PEREZ LOPEZ 0

ROMERO ALONSO 1 125.12 125.12 125.12 125.12

SEBASTIAN YUSTE 2 234.58 117.29 150.38 84.2

En nuestro ejemplo, obtenemos siete grupos (Por apellidos) y ahora

podemos aplicar el operador agregado COUNT para cada grupo, obteniendo el

resultado total de la consulta dada anteriormente.

Nótese que para el resultado de una consulta utilizando GROUP BY y

operadores agregados para dar sentido a los atributos agrupados, debemos

primero obtener la lista objetivo. Los demás atributos que no aparecen en la

cláusula GROUP BY se seleccionarán utilizando una función agregada. Por

otro lado, no se pueden utilizar funciones agregadas en atributos que aparecen

en la cláusula GROUP BY.

RESUMEN LECCIÓN

Es habitual realizar operación que engloben resumen dentro de una

selección de datos, para esto SQL proporciona las palabras:

• AVG : Promedio de los valores seleccionados

• COUNT : Total de valores seleccionados

• SUM : Suma de valores seleccionados

• MIN : El valor mínimo

...

Descargar como (para miembros actualizados) txt (3 Kb)
Leer 1 página más »
Disponible sólo en Clubensayos.com