SQL - realizar consultas en tabla

   
Vista:

realizar consultas en tabla

Publicado por ivang (2 intervenciones) el 20/05/2008 18:09:47
Hola buenas, me han dado esta tabla con los siguientes campos:

Libro (CodigoL, Titulo, Editorial, autor)

Sucursal (CodigoS, Nombre, Direccion)

Ejemplares (CodigoE, CodigoS, NumeroEjemplares)

Lector (NºTarjeta, Nombre, Apellidos, Telefono, Direccion)

Prestamo (CodigoL,CodigoS, NºTarjeta, FechaInicio, FechaDevolucion)

y me piden realizr las siguientes consultas:

Indicar aquellas sucursales en las que está disponible para el préstamo (es decir, existe algún ejemplar no prestado) el libro titulado ‘La Celestina’ indicando para cada sucursal el número de ejemplares disponibles, ordenar la salida por número de ejemplares disponibles.

Buscar el Nº de Tarjeta del lector que más préstamos ha solicitado indicando además el título del libro, sucursal y fechas de inicio y devolución de cada préstamo de dicho lector.

Listar los títulos de los libros que están asignados a todas y cada una de las sucursales indicando el título del libro y el número de ejemplares disponibles en cada sucursal.

Me he puesto a intentar sacarlas pero con mi poco conocimineto de esto no me da para hacerlo. se agradece la ayuda
Gracias por la atencion prestada
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:realizar consultas en tabla

Publicado por Isaias (5073 intervenciones) el 21/05/2008 00:44:47
Ivang

¿Nos puede mostrar que ha hecho o cual es su avance en el tema?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:realizar consultas en tabla

Publicado por Ivang (2 intervenciones) el 21/05/2008 17:24:56
veamos esto es lo que he empezaso a poner en las consultas: ( no las he podido comprobar por que ahora mismo no tengo donde hacerlo y por eso pido la ayuda por que como no puedo comprobarlas y como no tengo mucha idea supongo que no estaran bien )
Por cierto he cometido un error a la hora de poner los campos de las tablas que me acabo de dar cuenta, es en la tabla ejemplares, quedaria asi :

**************Ejemplares (CodigoL, CodigoS, NumeroEjemplares)*****************


consulta 1:

select CodigoS, Nombre, Direccion from sucursal where Libro.Titulo='La Celestina’ and Ejemplar.NumeroEjemplares>'0'
order by Ejemlar.NumeroEjemplares

Consulta 2:

select p.NºTarjeta, p.FechaInicio, p.FechaDevolucion,l.Titulo from Prestamo.p,Libro,l where ( aqui no se pomo poner lo del maximo de prestado )

Consulta 3:

select l.titulo,e.numejemplares from libro.l,ejemplares.e,sucursal.s where
s.codigos=e.codigos and l.codigol=e.codigol and e.codigos is not null

lo de e.codigos not null es por que podra haber ejemplares que no sean de ninguna sucursal no?? y como pide que tiene que serlo por eso lo he puesto

Gracias por analizarlas y ayudarme con los errores
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:realizar consultas en tabla

Publicado por Isaias (5073 intervenciones) el 21/05/2008 20:40:37
Ivang

Para cada problema planteado, debe aplicarse una metodologia de solucion, le voy a resolver el primero ejercicio, espero que usted intente resolver los otros 2.

TABLAS:
Libro (CodigoL, Titulo, Editorial, autor)
Sucursal (CodigoS, Nombre, Direccion)
Ejemplares (CodigoE, CodigoS, NumeroEjemplares)
Lector (NºTarjeta, Nombre, Apellidos, Telefono, Direccion)
Prestamo (CodigoL,CodigoS, NºTarjeta, FechaInicio, FechaDevolucion)

consulta 1:

Indicar aquellas sucursales en las que está disponible para el préstamo
(es decir, existe algún ejemplar no prestado)
el libro titulado ‘La Celestina’ indicando para cada sucursal el número
de ejemplares disponibles, ordenar la salida por número de ejemplares disponibles.

Tablas que intervienen en la consulta: SUCURSAL, LIBRO, EJEMPLARES

SELECT S.Nombre, COUNT(E.NumeroEjemplares) as Disponibles
FROM Sucursal as S JOIN Ejemplares E ON S.CodigoS = E.CodigoS
WHERE Titulo = 'La Celestina'
ORDER BY 2 DESC -- Ordenador por cantidad
HAVING COUNT(E.NumeroEjemplares) > 0 -- Que existan ejemplares
GROUP BY S.Nombre -- Agrupado por cada Sucursal

OBSERVACION, Estoy asumiendo que E.NumeroEjemplares es IGUAL a los disponibles, de no ser asi, digame, ¿Como saber cuales son los DISPONIBLES? (cual seria la formula a considerar ¿PRESTAMO?)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar