Ejemplos sql resueltos

Páginas: 5 (1167 palabras) Publicado: 10 de septiembre de 2012
TRABAJO PRACTICO 2 - IBBDD 2011



-----------------------------------------------------------------------------------------

INTEGRANTES



-----------------------------------------------------------------------------------------

Tablas del modelo de datos ibd_tp2_v3



autores (idAutores, nombre, apellido, f_nacimiento, email, web)

bibliotecas(idBibliotecas, nombre,f_inaguracion, web, calle, nro, dpto, piso, cp)

biblio_socios(idBiblioSocios, idSocios, idBibliotecas)

editoriales(idEditoriales, denominacion, email, web, pais, ciudad, calle, nro, piso, dpto, cp, vigente)

ejemplares(idEjemplares, NIU, idLibros, idBibliotecas, estado)

libros(idLibros, ISBN, titulo, anio_de_edicion, idEditoriales)

libros_autores(idLibrosAutores, idAutores, idLibros)prestamos(idPrestamos, fec_prestamo, idSocios, idEjemplares, idBibliotecas, fec_devolucion, fec_efec_devolucion)

reservas(idReservas, fec_reserva, idBibliotecas, idSocios, idLibros, fec_fin_reserva, efectiva)

sanciones(idSanciones, fec_inicio, idBibliotecas, idSocios, fec_fin, motivo)

socios(idSocios, dni, nombre, apellido, f_nacimiento, calle, nro, piso, dpto, cp, email, estudiante)tel_bibliotecas(idTel_bibliotecas, numero, idBibliotecas)

tel_editoriales(idTel_editoriales, numero, idEditoriales)

tel_socios(idTelSocios, numero, idSocios)





a) Para una biblioteca dada, listar el ISBN y título de todos los libros que tengan

alguna copia en estado malo, junto con la cantidad de copias en ese estado para el

libro.



SELECT b.idBibliotecas, l.isbn, l.titulo,count(l.idLibros) as en_mal_estado

FROM bibliotecas b INNER JOIN ejemplares e ON (b.idBibliotecas = e.idBibliotecas)

INNER JOIN libros l ON (e.idLibros = l.idLibros)

WHERE (e.estado = 'malo')

GROUP BY l.idLibros



b) Listar las bibliotecas (código y nombre) en las que existe al menos un ejemplar de

un libro cuyo ISBN se conoce.



SELECT distinct b.idBibliotecas,b.nombre

FROM bibliotecas b INNER JOIN ejemplares e ON (b.idBibliotecas = e.idBibliotecas)

INNER JOIN libros l ON (e.idLibros = l.idLibros)

WHERE (l.isbn = '950-742-894-X')



c.) Listar los libros (isbn, título y año de edición) existentes en una biblioteca dada

ordenados por su título.



SELECT distinct l.isbn, l.titulo, l.anio_de_edicion, b.idBibliotecas

FROMbibliotecas b INNER JOIN ejemplares e ON (b.idBibliotecas = e.idBibliotecas)

INNER JOIN libros l ON (e.idLibros = l.idLibros)

ORDER BY 2



d) Listar todas las sanciones que haya tenido un socio en cualquier biblioteca,

ordenadas cronológicamente. Se debe consignar el nombre de la biblioteca, el

motivo de la sanción y las fechas de inicio y fin de la misma.



SELECTsoc.idSocios, soc.nombre, soc.apellido, b.nombre, s.motivo, s.fec_inicio, s.fec_fin

FROM bibliotecas b INNER JOIN sanciones s ON (b.idBibliotecas = s.idBibliotecas)

INNER JOIN socios soc ON (s.idSocios = soc.idSocios)

ORDER BY s.fec_inicio



e) Listar todos los isbn de libros que están prestados actualmente y todos los libr

que están reservados actualmente, en una biblioteca dada, conun campo

“Asignación” con valor “P” si está prestado y valor “R” si está reservado.



SELECT b.idBibliotecas, l.*, 'P' as Asiganación

FROM bibliotecas b INNER JOIN prestamos p ON (b.idBibliotecas = p.idBibliotecas)

INNER JOIN ejemplares e ON (p.idEjemplares = e.idEjemplares)

INNER JOIN libros l ON (e.idLibros = l.idLibros)

WHERE (p.fec_efec_devolucion IS NULL)UNION ALL

SELECT b.idBibliotecas, l.*, 'R' as Asiganación

FROM bibliotecas b INNER JOIN reservas r ON (b.idBibliotecas = r.idBibliotecas)

INNER JOIN libros l ON (r.idLibros = l.idLibros)

WHERE (r.fec_fin_reserva > CURDATE())

ORDER BY 1



g) Listar todos los autores que hayan escrito libros de una editorial dada.



SELECT a.idAutores, a.nombre, a.apellido, l.titulo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ejemplo sql
  • Ejemplo Sql
  • Ejemplos de sql
  • Ejercicio Resuelto SQL Autos
  • Ejercicios SQL Server Resueltos
  • Ejemplos De Consultas Sql
  • Ejemplo Ensayo Sql
  • Consultas sql ejemplos y solucion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS