Actividades ayudantía 23.04.

                   Integrantes: Gabriela Behrend D/ Valentina Ulloa O.

Supuestos: La base de datos no guarda el histórico de los préstamos realizados, es
decir, que al entregar un libro, ese préstamo se elimina de la tabla PRESTAMO.

1.- Realice las siguientes vistas:

a) Que entregue los estudiantes que son de Ing. Comercial (NOMBRES y
APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus).

select e.nombres, e.apellidos, cc.nombre as carreras ,
c.nombre as campus
from estudiantes e, carreras cc, campus c
where cc.id_campus = c.id_campus and e.id_carrera =
cc.id_carrera and cc.nombre='ING. COMERCIAL'

b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del
estudiante, NOMBRE de la carrera y NOMBRE del campus).

select e.nombres, e.apellidos, cc.nombre as carreras ,
c.nombre as campus
from estudiantes e, carreras cc, campus c
where cc.id_campus = c.id_campus and e.id_carrera =
cc.id_carrera and cc.nombre='AUDITORIA'

c) Que entregue los estudiantes que se atrasaron en la entrega de los libros (RUT,
NOMBRES, APELLIDOS y FONO).

select e.rut_est, e.nombres, e.apellidos, e.fono, p.fecha_e
from estudiantes e, prestamo p
where e.rut_est=p.rut_est and p.fecha_e> sysdate

d) La cantidad de libros prestados.

select count (p.cod_libro)as libros
from prestamo p

e) Los libros de editoriales extranjeras (CODIGO, TITULO, AÑO y PAIS de
ORIGEN).

select l.cod_libro, l.titulo, l.agno as año, e.pais
from libros l , editoriales e
where e.pais <> 'CHILE' and l.id_edit=e.id_edit
f) Los libros que son de reserva (CODIGO, TITULO y AÑO del LIBRO, NOMBRE
de la biblioteca, el NOMBRE y APELLIDO del autor, el NOMBRE de la editorial y el
PAIS).

select l.cod_libro, l.titulo, l.agno as año , b.biblioteca,
a.nombres as nombresautor, a.apellidos as apellidosautor ,
e.nombre as editorial, e.pais, l.id_tipo as reserva
from libros l, biblioteca b, autores a, editoriales e
where l.id_edit=e.id_edit and b.id_biblio=l.id_biblio and
a.rut_autor=l.rut_autor and l.id_tipo='1'



2.-Se requiere obtener datos desde la Base de Datos y almacenarlos de forma
permanente (Vista). Se solicita:

   a) Los estudiantes del campus Isla Teja, que tienen libros en su poder (atrasados
      o no).

select e.nombres as nombresestudiantes, e.apellidos as
apellidosestudiantes , c.nombre as nombrecampus
from estudiantes e, campus c, prestamo p
where c.nombre='ISLA TEJA' and e.rut_est=p.rut_est
order by p.fecha_p

   b) Se debe entregar el RUT, NOMBRE y APELLIDOS del estudiante, además del

      NOMBRE de la carrera a la cual pertenece.

select e.rut_est as rutestudiantes, e.nombres as
nombresestudiantes, e.apellidos as apellidosestudiantes,
c.nombre as carrera
from estudiantes e, carreras c
where e.id_carrera=c.id_carrera
order by e.rut_est asc
c) Además se debe entregar que libro tiene prestado, indicando CODIGO,
      TITULO y AÑO, el NOMBRE y APELLIDO del autor, la EDITORIAL y su
      PAIS, indicar en qué biblioteca se encuentra, y de qué tipo es.

select e.rut_est as rutestudiantes, e.nombres as
nombresestudiantes, e.apellidos as apellidosestudiantes,
c.nombre as carrera, l.titulo, l.cod_libro as
codigolibro,l.agno as año, a.nombres as nombreautor,
a.apellidos as apellidosautor, ed.nombre as nombreeditorial,
ed.pais as paiseditoril, b.biblioteca, l.id_tipo, p.fecha_p
from estudiantes e, carreras c, editorial ed, prestamo p,
libros l, autores a, biblioteca b, tipo t
where l.id_edit=ed.id_edit and l.id_biblio=b.id_biblio and
ed.cod_libro=l.cod_libro and l.id_tipo=t.id_tipo and
e.rut_est=p.rut_est
order by p.fecha_p


   d) Se debe indicar que funcionario realizo la transacción, con RUT, NOMBRE y
      APELLIDO. Además deberá indicarse la FECHA de PRESTAMO y la
      FECHA de ENTREGA de éste.


select f.rut_func as rutfuncionarios, f.nombres as
nombresfuncionarios, f.apellidos as funcionariosapellidos,
p.fecha_p as fechaprestamo, p.fecha_e as fechaentrega
from funcionarios f, prestamo p
where f.rut_func=p.rut_func



3.- Se solicita obtener lo siguiente (consultas):

       a) El numero de Estudiantes por Carrera.

select c.nombre as carreras, count(e.nombres)as
numestudiantes
from carreras c, estudiantes e
where c.id_carrera=e.id_carrera
group by c.nombre

       b) El numero de Estudiantes por Campus
select c.nombre as campus, count(e.nombres)as numestudiantes
from campus c, estudiantes e
group by c.nombre

    c) El numero de Estudiantes por Ciudad

select c.nombre as ciudad, count(e.nombres)as numestudiantes
from ciudad c, estudiantes e
group by c.nombre

    d) El numero de Préstamos atrasados

select count(p.fecha_e)as prestamosatrasados
from prestamo p
where p.fecha_e>sysdate

    c) El número de Prestamos Activos, No atrasados.

select count(p.fecha_p)as prestamosactivos
from prestamo p
where p.fecha_p<sysdate

Trabajo ayudantia

  • 1.
    Actividades ayudantía 23.04. Integrantes: Gabriela Behrend D/ Valentina Ulloa O. Supuestos: La base de datos no guarda el histórico de los préstamos realizados, es decir, que al entregar un libro, ese préstamo se elimina de la tabla PRESTAMO. 1.- Realice las siguientes vistas: a) Que entregue los estudiantes que son de Ing. Comercial (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus). select e.nombres, e.apellidos, cc.nombre as carreras , c.nombre as campus from estudiantes e, carreras cc, campus c where cc.id_campus = c.id_campus and e.id_carrera = cc.id_carrera and cc.nombre='ING. COMERCIAL' b) Que entregue los estudiantes que son de Auditoria (NOMBRES y APELLIDOS del estudiante, NOMBRE de la carrera y NOMBRE del campus). select e.nombres, e.apellidos, cc.nombre as carreras , c.nombre as campus from estudiantes e, carreras cc, campus c where cc.id_campus = c.id_campus and e.id_carrera = cc.id_carrera and cc.nombre='AUDITORIA' c) Que entregue los estudiantes que se atrasaron en la entrega de los libros (RUT, NOMBRES, APELLIDOS y FONO). select e.rut_est, e.nombres, e.apellidos, e.fono, p.fecha_e from estudiantes e, prestamo p where e.rut_est=p.rut_est and p.fecha_e> sysdate d) La cantidad de libros prestados. select count (p.cod_libro)as libros from prestamo p e) Los libros de editoriales extranjeras (CODIGO, TITULO, AÑO y PAIS de ORIGEN). select l.cod_libro, l.titulo, l.agno as año, e.pais from libros l , editoriales e where e.pais <> 'CHILE' and l.id_edit=e.id_edit
  • 2.
    f) Los librosque son de reserva (CODIGO, TITULO y AÑO del LIBRO, NOMBRE de la biblioteca, el NOMBRE y APELLIDO del autor, el NOMBRE de la editorial y el PAIS). select l.cod_libro, l.titulo, l.agno as año , b.biblioteca, a.nombres as nombresautor, a.apellidos as apellidosautor , e.nombre as editorial, e.pais, l.id_tipo as reserva from libros l, biblioteca b, autores a, editoriales e where l.id_edit=e.id_edit and b.id_biblio=l.id_biblio and a.rut_autor=l.rut_autor and l.id_tipo='1' 2.-Se requiere obtener datos desde la Base de Datos y almacenarlos de forma permanente (Vista). Se solicita: a) Los estudiantes del campus Isla Teja, que tienen libros en su poder (atrasados o no). select e.nombres as nombresestudiantes, e.apellidos as apellidosestudiantes , c.nombre as nombrecampus from estudiantes e, campus c, prestamo p where c.nombre='ISLA TEJA' and e.rut_est=p.rut_est order by p.fecha_p b) Se debe entregar el RUT, NOMBRE y APELLIDOS del estudiante, además del NOMBRE de la carrera a la cual pertenece. select e.rut_est as rutestudiantes, e.nombres as nombresestudiantes, e.apellidos as apellidosestudiantes, c.nombre as carrera from estudiantes e, carreras c where e.id_carrera=c.id_carrera order by e.rut_est asc
  • 3.
    c) Además sedebe entregar que libro tiene prestado, indicando CODIGO, TITULO y AÑO, el NOMBRE y APELLIDO del autor, la EDITORIAL y su PAIS, indicar en qué biblioteca se encuentra, y de qué tipo es. select e.rut_est as rutestudiantes, e.nombres as nombresestudiantes, e.apellidos as apellidosestudiantes, c.nombre as carrera, l.titulo, l.cod_libro as codigolibro,l.agno as año, a.nombres as nombreautor, a.apellidos as apellidosautor, ed.nombre as nombreeditorial, ed.pais as paiseditoril, b.biblioteca, l.id_tipo, p.fecha_p from estudiantes e, carreras c, editorial ed, prestamo p, libros l, autores a, biblioteca b, tipo t where l.id_edit=ed.id_edit and l.id_biblio=b.id_biblio and ed.cod_libro=l.cod_libro and l.id_tipo=t.id_tipo and e.rut_est=p.rut_est order by p.fecha_p d) Se debe indicar que funcionario realizo la transacción, con RUT, NOMBRE y APELLIDO. Además deberá indicarse la FECHA de PRESTAMO y la FECHA de ENTREGA de éste. select f.rut_func as rutfuncionarios, f.nombres as nombresfuncionarios, f.apellidos as funcionariosapellidos, p.fecha_p as fechaprestamo, p.fecha_e as fechaentrega from funcionarios f, prestamo p where f.rut_func=p.rut_func 3.- Se solicita obtener lo siguiente (consultas): a) El numero de Estudiantes por Carrera. select c.nombre as carreras, count(e.nombres)as numestudiantes from carreras c, estudiantes e where c.id_carrera=e.id_carrera group by c.nombre b) El numero de Estudiantes por Campus
  • 4.
    select c.nombre ascampus, count(e.nombres)as numestudiantes from campus c, estudiantes e group by c.nombre c) El numero de Estudiantes por Ciudad select c.nombre as ciudad, count(e.nombres)as numestudiantes from ciudad c, estudiantes e group by c.nombre d) El numero de Préstamos atrasados select count(p.fecha_e)as prestamosatrasados from prestamo p where p.fecha_e>sysdate c) El número de Prestamos Activos, No atrasados. select count(p.fecha_p)as prestamosactivos from prestamo p where p.fecha_p<sysdate