Академический Документы
Профессиональный Документы
Культура Документы
EJERCICIO 1.
Dadas las tablas:
ALUMNO(nº-matricula,nombre,apellidos,dni,dirección, ciudad, Tlf). 1000 alumnos.
ASIGNATURA(cod-asignatura, nombre-asig). 100 asignaturas.
MATRICULADO(nº-matricula,cod-asignatura,nota). 10000 filas.
a) Select as.nombre
From Asignatura as, matriculado m, alumno a
Where as.cod-asignatura=m.cod-asignatura
And m.nº-matricula = a.nº-matricula
And dni=’A777’;
1
πas.nombre (σ as.codasig = m.codasig (ASIGNATURA X (π codasig (σ
m.nºmatricula=a.nºmatricula( π nºmatricula, codigoasig (MATRICULADO)) X (π
dni,nºmatricula(σ dni=’A777’(ALUMNO)))))))
2
Boletín optimización | Inma Morilla
1b)
(SELECT NOMBRE, DNI
FROM ALUMNO A, MATRICULADO M, ASIGNATURA AS
WHERE A.NºMATRICULA = M.NºMATRICULA
AND CIUDAD=SEVILLA
AND NOMBRE-ASIG=GBD) n
(SELECT NOMBRE, DNI
FROM ALUMNO A, MATRICULADO M, ASIGNATURA AS
WHERE A.NºMATRICULA = M.NºMATRICULA
AND CIUDAD=SEVILLA
AND NOMBRE-ASIG=SAD)
3
Π nombre, dni ( σ nºmatricula = m.nºmatricula (π nombre,dni,nºmatricula(σ ciudad =
SEVILLA(ALUMNO)) X (π nºmatri(σ mcod=as.cod(MATRICULADO x π as.codasig(σ
nombreasig=GBD(ASIGNATURA))))))) n
SELECT nombre,dni
FROM (
SELECT nombre, dni, nºmatricula
FROM ALUMNO
WHERE ciudad=SEVILLA)
WHERE nºmatircula=m.nºmatricula
4
Boletín optimización | Inma Morilla
1c)
SELECT al.ciudad
FROM ALUMNO AL, MATRICULADO M, ASIGNATURA A
WHERE AL.NºMATRI=M.NºMATRI
AND MA.COD-ASIG = A.COD-ASIG
AND A.NOMBRE-ASIG = ‘ASGB’
AND M.NOTA >=5
5
SELECT ciudad
(SELECT NºMATRI
6
Boletín optimización | Inma Morilla
EJERCICIO2.
Dadas las tablas:
CLIENTE ( cod-cli,nombre,dirección,ciudad,edad, teléfono). 3000 clientes.
PRODUCTO(cod-producto,descripción,preciounitario). 50000 productos.
COMPRAS(cod-producto,cod-cli,cantidad). 2000000 de filas.
2a)
SELECT NOMBRE
FROM CLIENTE
Π nombre (σ ciudad=Madrid(CLIENTE))
optimizada
SELECT NOMBRE
7
2b)
AND COM.COD-PRODUCTO=’P5’
SELECT NOMBRE
8
Boletín optimización | Inma Morilla
2c)
SELECT CLI.NOMBRE
9
Π nombre (σ c.cod-cli = com.cod-cli((π cod-cli(CLIENTE)) X (π cod-cli (σ com.cod-proc = p.cod-pro
(π cod-pro, cod-cli(COMPRAS)) X π cod-pro (σ preciounitario>10(PRODUCTO))))))
SELECT NOMBRE
10
Boletín optimización | Inma Morilla
EJERCICIO 3.
Dadas las tablas:
PROVEEDORES(cod-proveed, nombre,ciudad,calle, numero) 1000 proveedores.
ARTÍCULOS(cod-art,nombre-art,precio,descripción,color). 50000 artículos.
PEDIDOS( cod-pedido,cod-art,cantidad). 10000000 pedidos.
SUMINISTROS(cod-proveed,cod-art,capacidad-distribución) 50000000 filas. Contiene los
artículos que suministra cada proveedor y en que proporción puede suminstrarlos.
3a)
SELECT ART.NOMBRE
AND SUM.CAPACIDAD-DIST>50
11
Π nombre (σ art.cod-art = sum.codart ( (π cod-art,nombre(σ art.color=rojo (π cod-
art,color,nombre (ARTICULOS)))) X (π cod-art (σ sum.cap-dist > 50 (π cod-art, cap-
dist(SUMINISTROS))))))
SELECT NOMBRE
FROM (SELECT COD-ART, COLOR, NOMBRE FROM ARTICULOS WHERE ART.COLOR) ART
12
Boletín optimización | Inma Morilla
3b)
SELECT PROV.NOMBRE
13
Π nombre (σ cod-pre = s.cod-pre ((π cod-pre,nombre(PROVEEDORES)) X (π codpre (σ cod-art =
a.cod-art (π cod-art(SUMINISTROS)) X (π cod-pre, cod-art (σ color = rojo (π cod-pre, cod-art,
color (ARTICULOS)))))))))
SELECT NOMBRE
) SA
14
Boletín optimización | Inma Morilla
3C)
SELECT ART.NOMBRE
15
Π nombre (σ cod-art = p.cod-art ( (π cod-art,nombre (ARTICULO)) X (π cod-art (σ p.cant > s.cap-
dist ( (π cod-art, cant (PEDIDOS)) X (π cod-art, cap-dis (SUMINISTROS)) )))))
SELECT NOMBRE
16
Boletín optimización | Inma Morilla
3d)
MINUS
(SELECT P.NOMBRE
AND S.COD-ART=’A7’)
17
SELECT NOMBRE FROM PROVEEDORES MINUS
INTERSECT
SELECT COD-PROVED
18
Boletín optimización | Inma Morilla
n
SELECT COD-PROVED FROM (SELECT COD-ART FROM SUMINISTROS) S,
19
20