Prac3_1_2

Páginas: 11 (2737 palabras) Publicado: 27 de mayo de 2016
Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO

„ Un grupo se puede entender como un conjunto de filas con el mismo

valor para el conjunto de columnas por las que se agrupa (las
incluidas en la cláusula GROUP BY).
Obtener
Obtener el
el nombre
nombre de
de cada
cada equipo
equipo yy la
la edad
edad media
media de
de
los
ciclistas
de
dicho
equipo:
los ciclistas de dicho equipo:

select
select nomeq,nomeq, AVG(edad)
AVG(edad)
from
Ciclista
from Ciclista
group by nomeq ;;

Bases de Datos

Curso 2006/07

Nomeq
Banesto
ONCE
PDM
Banesto
Kelme
ONCE
Kelme
Banesto

Edad
22
25
32
25
28
30
29
28

DSIC-UPV

1

Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO

„ Las funciones agregadas en las consultas agrupadas funcionan de

forma diferente que en las consultas normales, devolviendo un valor
por cada grupoformado.
Nomeq
Banesto
Banesto
Banesto
ONCE
ONCE
PDM
Kelme
Kelme

Edad
22
25
28
25
30
32
29
28

Un Valor
por Grupo

select
select nomeq,
nomeq, AVG(edad)
AVG(edad)
from
Ciclista
from Ciclista
group
group by
by nomeq
nomeq ;;
Bases de Datos

Curso 2006/07

DSIC-UPV

2

1

Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO

„ Entonces para la consulta:

select
select nomeq,
nomeq, AVG(edad)
AVG(edad)from
Ciclista
from Ciclista
group
group by
by nomeq
nomeq ;;
La solución, es:

Bases de Datos

Nomeq
Banesto
ONCE
PDM
Kelme

Curso 2006/07

Edad
25
27,5
32
28,5

DSIC-UPV

3

Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO
Ejemplo
Ejemplo incorrecto:
incorrecto:

select
select nomeq,
nomeq, nombre,
nombre, AVG(edad)
AVG(edad)
from
Ciclista
from Ciclista
group
group by
by nomeq
nomeq ;;
La
La regla
reglasintáctica
sintáctica que
que aplican
aplican los
los sistemas
sistemas
relacionales
para
asegurar
el
buen
relacionales para asegurar el buen funcionamiento
funcionamiento
de
de las
las consultas
consultas agrupadas
agrupadas es
es la
la siguiente:
siguiente:
“en
“en la
la selección
selección de
de una
una consulta
consulta agrupada,
agrupada, sólo
sólo pueden
pueden
aparecer
aparecer referenciasreferencias aa columnas
columnas por
por las
las cuales
cuales se
se
agrupa,
agrupa, referencias
referencias aa funciones
funciones agregadas
agregadas oo literales”.
literales”.

Bases de Datos

Curso 2006/07

DSIC-UPV

4

2

Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO
GROUP
GROUP yy WHERE:
WHERE:
Si
Si se
se incluye
incluye la
la cláusula
cláusula where,
where, la
la aplicación
aplicación de
deesta
cláusula
se
produce
previamente
esta cláusula se produce previamente aa la
la agrupación
agrupación

4
1
2
3

Bases de Datos

select
select nomeq,
nomeq, AVG(edad)
AVG(edad)
from
Ciclista
from Ciclista
where
where edad>25
edad>25
group
group by
by nomeq
nomeq ;;

Curso 2006/07

DSIC-UPV

5

Consultas Complejas:
SELECCIÓN-AGRUPAMIENTO
GROUP,
GROUP, WHERE
WHERE yy HAVING:
HAVING:
La
Lacláusula
cláusula HAVING
HAVING sólo
sólo puede
puede ir
ir en
en consultas
consultas
agrupadas
agrupadas yy es
es similar
similar aa WHERE,
WHERE, pero
pero en
en un
un orden
orden
diferente:
diferente:
1º)
1º) Condición
Condición WHERE
WHERE (se
(se usa
usa para
para las
las filas)
filas)
2º)
2º) Agrupamiento
Agrupamiento yy cálculo
cálculo de
de valores
valores agregados
agregados
3º)
3º) CondiciónCondición HAVING
HAVING (se
(se usa
usa para
para los
los grupos)
grupos)
En
En la
la cláusula
cláusula HAVING
HAVING sólo
sólo podrán
podrán aparecer
aparecer
directamente
referencias
a
columnas
directamente referencias a columnas por
por las
las
cuales
se
agrupan
o
a
funciones
agregadas.
cuales se agrupan o a funciones agregadas.
Bases de Datos

Curso 2006/07

DSIC-UPV

6

3

Consultas Complejas:SELECCIÓN-AGRUPAMIENTO
Obtener
Obtener el
el nombre
nombre de
de cada
cada equipo
equipo yy la
la edad
edad media
media de
de
sus
ciclistas
con
más
de
25
años,
de
aquellos
sus ciclistas con más de 25 años, de aquellos equipos
equipos
con
con más
más de
de 33 corredores
corredores mayores
mayores de
de 25
25 años.
años.

select
select nomeq,
nomeq, AVG(edad)
AVG(edad)
from
Ciclista
from Ciclista...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS