Está usted en Indice > Construcción > Lenguajes > SQL > Lecciones y Paso a Paso > Funciones para el manejo de grupos de filas con SQL
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Funciones para el manejo de grupos de filas con SQL

Las funciones para grupos permiten seleccionar información a partir de grupos de líneas o registros. Por ejemplo, pueden agruparse todos los empleados que pertenezcan al mismo departamento y entonces calcular el salario máximo en cada grupo de departamentos:

SELECT DEPTNO,MAX(SAL)

FROM EMP GROUP BY DEPTNO;

Headers(); PrintAll;

Funciones para el manejo de grupos de filas con SQL

En una búsqueda de grupos, cada línea en el resultado de la búsqueda, corresponde a un grupo de líneas de nuestra tabla, la columna que se pone a continuación de group by es aquella por la que queremos agrupar las líneas de la tabla. En el ejemplo anterior cada línea de la tabla EMP se incluye en uno de los tres grupos, uno para cada departamento, dependiendo de su valor en el campo DEPTO: todas las líneas de su mismo grupo tienen el mismo número de departamento.

Podemos combinar las funciones de grupo con las búsquedas relacionales. Además, hay tres funciones que pueden utilizarse con los grupos:

* SUM : Para sumar los valores de los campos, dentro de los grupos definidos por GROUP BY.

* COUNT: Para contar el número de líneas que entran en cada uno de esos grupos.

* AVG: Para saber la medida de los valores de campos específicos en cada grupo.

El siguiente ejemplo tiene como objetivo saber cuantos empleados están trabajando en cada categoría en cada departamento, cuantos secretarios hay en el departamento de ventas y, en esos grupos, cuál es la suma y media de los salarios:

SELECT DNAME,JOB,SUM(SAL),

COUNT(*),

AVG(SAL)

FROM EMP,DEPT

WHERE EMP.DEPTNO=DEPT.DEPTNO

GROUP BY DNAME,JOB;

Headers(); PrintAll;

Funciones para el manejo de grupos de filas con SQL

Condiciones de búsqueda de un grupo de líneas: HAVING

Así como el operador WHERE se especifican las condiciones para las búsquedas con líneas individuales, con HAVING pueden especificarse las condiciones de búsqueda para grupos de líneas.



Usuarios que han visto este tema también han visto...

- Subconsultas SQL
- Recuperar una base de datos
- Consultas de unión externas con SQL
- Tablas temporales en SQL server
- Tipos de datos en SQL


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2008 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 04-07-2008 a las 17:48:32