PDF de programación - Fundamentos de las Bases de Datos

Imágen de pdf Fundamentos de las Bases de Datos

Fundamentos de las Bases de Datosgráfica de visualizaciones

Publicado el 24 de Junio del 2017
1.030 visualizaciones desde el 24 de Junio del 2017
728,9 KB
49 paginas
Creado hace 10a (17/05/2013)
Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

1



Fundamentos de las bases de datos

Ejercicios de práctica SQL resueltos


T02.001- Obtén toda la información de los usuarios
select * from usuario;



T02.002- Lista los email y nombre y apellidos de los usuarios
select email,nombre,apellidos from usuario



T02.003- Lista los email y nombre y apellidos de los usuarios ordenados por email
select email,nombre,apellidos
from usuario
order by email;



T02.004- Lista los email y nombre y apellidos de los usuarios ordenados por apellidos y nombre
select email,nombre,apellidos
from usuario
order by apellidos,nombre;



T02.005- Lista los email y nombre y apellidos de los usuarios ordenados ascendentemente por
apellidos y descendentemente por nombre
select email,nombre,apellidos
from usuario
order by apellidos,nombre desc;



T02.006- Lista los email y nombre y apellidos de los usuarios en orden descendente de apellidos y
nombre
select email,nombre,apellidos
from usuario
order by apellidos desc, nombre desc;



T02.007- DNI,email,nombre y apellidos de los usuarios de la provincia de Asturias (código 33).
select dni,email,nombre,apellidos

BDgite, DLSI, Universidad de Alicante



Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

2


from usuario
where provincia='33';
Solución alternativa:

select dni,email,u.nombre,apellidos
from usuario u, provincia pv
where u.provincia=codp and pv.nombre='Asturias';
El código de las localidades y de las provincias es texto, no número.



T02.008- Toda la información (código y nombre) de las provincias de las que se tienen usuarios
select pv.*
from usuario u, provincia pv
where u.provincia=codp;



T02.009- Toda la información (código y nombre) de las provincias de las que se tienen usuarios,
eliminando duplicados y ordenando por nombre
select distinct pv.*
from usuario u, provincia pv
where u.provincia=codp
order by pv.nombre;
Solución alternativa:

select distinct pv.*
from usuario u, provincia pv
where u.provincia=codp
order by 2;



T02.010- Email de los usuarios de la provincia de Murcia que no tienen teléfono, acompañado en la
salida por un mensaje que diga "No tiene teléfono"
select email,'No tiene teléfono'
from usuario u, provincia pv
where u.provincia=codp and pv.nombre = 'Murcia'
and telefono is null;



T02.011- Marcas
select * from marca;



T02.012- Artículos que no tienen marca
select * from articulo where marca is null

BDgite, DLSI, Universidad de Alicante



Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

3



T02.013- Código de los artículos que pertenecen a algún pack.
select articulo
from ptienea;



T02.014- Número de pack, nombre y precio del mismo.
select p.cod,nombre,pvp
from articulo a, pack p
where a.cod = p.cod



T02.015- Código, nombre y marca de los articulos que pertenecen a algún pack.
select articulo,nombre,marca
from articulo, ptienea
where cod = articulo



T02.016- Código y precio de venta de los artículos solicitados en el pedido número 1.
select articulo,precio
from linped
where numpedido=1



T02.017- Código, nombre, marca, pvp y precio de venta de los artículos solicitados en el pedido número
1.
select articulo,nombre,marca,pvp,precio
from linped l, articulo a
where numpedido=1
and a.cod=l.articulo



T02.018- Código, nombre, marca, pvp y precio de venta de los artículos solicitados en el pedido número
1 que sean televisores.
select articulo,nombre,marca,pvp,precio
from linped l, articulo a, tv t
where numpedido=1
and a.cod=l.articulo
and a.cod=t.cod



T02.019- Fecha y usuario del pedido, código, nombre, marca, pvp y precio de venta de los artículos
solicitados en el pedido número 1 que sean televisores.
select fecha,usuario,articulo,nombre,marca,pvp,precio
BDgite, DLSI, Universidad de Alicante



Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

4


from linped l, articulo a, tv t, pedido p
where l.numpedido=1 and l.numpedido = p.numpedido
and a.cod=l.articulo
and a.cod=t.cod



T02.021- Código,nombre y precio de venta al público de los artículos de menos de 100€; la salida ha de
ser código, nombre, "tiene el precio de", pvp.
select cod,nombre,'tiene el precio de',pvp from articulo where pvp < 100



T02.022- Código, sensor y pantalla de las cámaras, si es que "pantalla" tiene valor, ordenado por código
descendentemente;
select cod,sensor,pantalla
from camara
where pantalla is not null order by cod desc;



T02.023- Panel de los televisores de 21 pulgadas o menos de pantalla, eliminando duplicados.
select distinct panel
from tv
where pantalla <= 21;



T02.024- Código, nombre, marca y precio de venta al público de los artículos que tienen ese precio
entre 350 y 450.
select cod, nombre, marca, pvp
from articulo
where pvp >=350 and pvp <= 450;



T02.025- Número de pack, nombre y precio del mismo, y código, nombre y pvp de los artículos que
pertenezcan a ellos.
select p.cod, a1.nombre, a1.pvp, a2.cod, a2.nombre, a2.pvp
from articulo a1, pack p, ptienea pp, articulo a2
where a1.cod = p.cod
and pp.pack = p.cod
and pp.articulo = a2.cod



BDgite, DLSI, Universidad de Alicante


Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

5


T03.001- Código y nombre de los articulos con un precio entre 400 y 500 euros.
select cod,nombre from articulo where pvp between 400 and 500;
Solución alternativa:

select cod,nombre from articulo where pvp >= 400 and pvp <= 500;



T03.002- Código y nombre de los articulos con precio 415, 129, 1259 o 3995.
select cod,nombre from articulo
where pvp in (415, 129, 1259, 3995);
Solución alternativa:

select cod,nombre from articulo
where pvp = 415 or pvp = 129 or pvp = 1259 or pvp = 3995;



T03.003- Código y nombre de las provincias que no son Huelva, Sevilla, Asturias ni Barcelona.
select codp,nombre from provincia
where nombre not in ('huelva', 'sevilla', 'asturias', 'barcelona');
Solución alternativa:

select codp,nombre from provincia
where nombre != 'huelva' and nombre != 'sevilla'
and nombre != 'asturias'and nombre != 'barcelona';



T03.004- Código de la provincia Alicante.
select codp from provincia
where nombre like 'Alicante%';



T03.005- Obtener el código, nombre y pvp de los articulos cuya marca comience por S.
select cod, nombre, pvp from articulo where marca like 'S%'



T03.006- Información sobre los usuarios cuyo email es de la eps.
select * from usuario where email like '%@eps.%'



T03.007- Código, nombre y resolución de los televisores cuya pantalla no esté entre 22 y 42.
select a.cod, nombre, resolucion
from articulo a, tv
where a.cod=tv.cod and pantalla not between 22 and 42;

BDgite, DLSI, Universidad de Alicante






Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia

6

T03.008- Código y nombre de los televisores cuyo panel sea tipo LED y su precio no supere los 1000
euros.
select t.cod, nombre from tv t, articulo a where t.cod=a.cod and panel like '%LED%' and
pvp<=1000;



T03.009- Email de los usuarios cuyo código postal no sea 02012, 02018 o 02032.
select email from usuario
where codpos not in ('02012','02018','02032');



T03.010- Código y nombre de los packs de los que se conoce qué articulos los componen.
select distinct cod, nombre
from articulo, ptienea
where pack=cod;



T03.011- ¿Hay algún artículo en cesta que esté descatalogado?
select *
from cesta c, stock s
where c.articulo=s.articulo
and entrega='descatalogado';



T03.012- Código, nombre y pvp de las cámaras de tipo compacta.
select a.cod, nombre, pvp
from articulo a, camara c
where a.cod=c.cod and tipo like'%compacta%';



T03.013- Código, nombre y diferencia entre pvp y precio de los articulos que hayan sido solicitados en
algún pedido a un precio distinto de su precio de venta.
select cod, nombre, pvp-precio
from articulo, linped
where cod=articulo and pvp<>precio;



T03.014- Número de pedido,fecha y nombre y apellidos del usuario que solicita el pedido, para aquellos
pedidos solicitados por algún usuario de apellido MARTINEZ.
select numpedido, fecha, nombre, apellidos
from pedido, usuario
where usuario=email and apellidos like'%MARTINEZ%'

BDgite, DLSI, Universidad de Alicante


Fundamentos de las Bases de Datos, grados I. Informática e I. Multimedia



T03.015- Código, nombre y marca del artículo más caro.
select cod, nombre, marca, pvp
from articulo
where pvp = (select max(pvp) from articulo);
Solución alternativa:

select cod, nombre, marca, pvp
from articulo
where pvp >= all (select pvp from articulo);
La solución alternativa no funciona por un "bug" de la versión instalada del motor MySQL.



T03.016- Nombre, marca y resolucion de las cámaras que nunca se han solicitado.
select nombre, marca, resolucion
from articulo a, camara c
where a.cod=c.cod and
c.cod not in (select articulo from linped);



T03.017- Código, nombre, tipo y marca de las cámaras de marca Nikon, LG o Sigma.
select a.cod, nombre, tipo, marca
from articulo a, camara c
where a.cod=c.cod and marca in ('NIKON','LG','SIGMA');



T03.018- Código, nombre y pvp de la cámara más cara de entre las de tipo réflex.
select a.cod, nombre, pvp
from articulo a, camara c
where a.cod=c.cod
and tipo like '%reflex%'
and pvp=(
select max(pvp)
from articulo a, camara c
where a.cod=c.cod and tipo like '%reflex%');
Solución alternativa:

select a.cod, nombre, pvp
from articulo a, camara c
where a.cod=c.cod and tipo like'%réflex%'
and pvp >= all (select pvp from articulo a, camara c
where a.cod=c.cod and tipo like'%réflex%');



BDgite, DLSI, Universidad
  • Links de descarga
http://lwp-l.com/pdf4582

Comentarios de: Fundamentos de las Bases de Datos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad