La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Bases de datos con MYSQL

Presentaciones similares


Presentación del tema: "Bases de datos con MYSQL"— Transcripción de la presentación:

1 Bases de datos con MYSQL
TERCERA SESION

2 Funciones de Grupo Las funciones de grupo operan sobre un conjunto de filas (tuplas) agrupadas por el valor de un atributo en comun. Personas que trabajan En el Departamento 1

3 Directrices para formar grupos
Se tiene que especificar con que atributo, o conjunto de atributos con los que se realizara el grupo Se tiene que especificar la condicion con que se formara el grupo utilizando la sentencia GROUP BY Grupo formado por la agrupación del atributo Trabaja_en con el valor igual a 1 En este caso GROUP BY = Trabaja_en Ya teniendo la condición realizada Se puede operar los demas atributos con las funciones de grupo

4 Directrices para funciones de grupo
Existen diversos tipos de funciones de grupo, en esto también algunos DBMS agregan funciones especiales, dentro de las funciones del SQL Standard tenemos: AVG( atributo ) Promedio del atributo seleccionado COUNT( * ) Cuenta las filas de la selección MAX(atributo ) Valor máximo del atributo MIN(atributo ) Valor mínimo del atributo SUM(atributo ) Suma todos los valores del atributo VARIANCE(atributo ) Varianza del atributo

5 Directrices para funciones de grupo
Las funciones de grupo operan sobre la selección de atributos realizada en la sentencia SELECT

6 Utilizando las funciones de grupo
Las funciones de grupo, responde a diferentes consultas donde se ve involucrada una previa agrupacion. Antes de resolver una consulta se debe tener bien definida la idea de cómo se formara el grupo Ejemplo ¿Cuál es el empleado que gana mas salario? AGRUPACION : TODOS FUNCION DE GRUPO MAX(ATRIBUTO)

7 Utilizando funciones de grupo
Resolviendo la consulta tendríamos la siguiente sentencia. SELECT NOMBRE, APELLIDO, MAX(SALARIO) FROM EMPLEADO

8 Utilizando funciones de grupo
¿Cuál es el máximo salario de cada departamento? AGRUPACION : DEPARTAMENTO FUNCION DE GRUPO MAX(ATRIBUTO) SELECT TRABAJA_EN , MAX(SALARIO) FROM EMPLEADO GROUP BY TRABAJA_EN

9 Preguntas para la clase
¿Cuál es el promedio de los salarios del departamento 1? ¿Cuál es el promedio de los salarios de todos los departamentos? ¿Cuál es el salario mas bajo en todos los departamentos? ¿A cuanto alcanza la suma de los salarios en cada departamento?

10 ¿MOSTRAR SOLO PROMEDIO DE LOS SALARIOS MAYORES A 3000 BS.?
Condicionando grupos Existe un sentencia que condiciona el resultado de las funciones de grupo : El Promedio De los Salarios por Departamento ¿MOSTRAR SOLO PROMEDIO DE LOS SALARIOS MAYORES A 3000 BS.?

11 La clausula HAVING La clausula HAVING se utiliza para agregar una condicion, despues de haber realizado una funcion de grupo Se utiliza para condicionar la agrupacion realizada por el GROUP BY

12 Directrices para utilizar HAVING
Utilizar Having solo para realizar condiciones a funciones de grupo Tener bien formulado el grupo de datos a trabajar y condiciones a utilizar Ejm. Promedio de los salarios de los departamentos que sean mayores a 3000 PASO 1 : DEFINIR LA SENTENCIA DE LA FUNCION DE GRUPO SIN LA CONDICION SELECT TRABAJA_EN , AVG(SALARIO) FROM EMPLEADO GROUP BY TRABAJA_EN

13 Directrices para utilizar HAVING
PASO 2 : APLICAR HAVING A LA FUNCION DE GRUPO CONDICIONANDOLO CON UN VALOR SELECT TRABAJA_EN , AVG(SALARIO) FROM EMPLEADO GROUP BY TRABAJA_EN HAVING AVG(SALARIO) > 3000

14 Preguntas para la Clase
¿Qué departamentos tienen salarios máximos arriba de 3500? ¿Qué departamentos en su suma de salarios sobrepasan los 7000 bs.?


Descargar ppt "Bases de datos con MYSQL"

Presentaciones similares


Anuncios Google