laboratorio número ii
TRANSCRIPT
Laboratorio Número II(Vistas)
Integrantes:Jorge Angulo HernándezPaulina Muñoz Vargas
Ayudante:José Luis Carrasco
Valdivia, 21 de Noviembre de 2012.-
Laboratorio II
1.- Realice las siguientes vistas:
a)
CREATE OR REPLACE VIEW ESTUDIANTES_COMERCIAL ASSELECT e.nombres, e.apellidos, cr.nombre as carreras, ca.nombre as campusFROM campus ca, carreras cr, estudiantes eWHERE ca.id_campus=cr.id_campusAND cr.id_carrera=e.id_carreraAND cr.nombre='ING. COMERCIAL'
b)
CREATE OR REPLACE VIEW ESTUDIANTES_AUDITORIA ASselect e.nombres, e.apellidos, c.nombre as carreras, ca.nombre as campusfrom estudiantes e, carreras c, campus cawhere e.id_carrera=c.id_carreraand ca.id_campus=c.id_campusand c.nombre='AUDITORIA'
c)
select e.rut_est, e.nombres, e.apellidos, e.fono, p.fecha_e, p.fecha_pfrom estudiantes e, prestamo pwhere e.rut_est=p.rut_estand p.fecha_e > sysdate
d)
CREATE OR REPLACE VIEW LIBROS_PRESTADOS ASselect count(*) AS LIBROSfrom prestamo
e)
CREATE OR REPLACE VIEW LIBROS_EXTRANJEROS ASselect l.cod_libro, l.titulo, l.agno, e.paisfrom libros l, editoriales ewhere e.id_edit=l.id_editand PAIS <> 'CHILE'
f)
CREATE OR REPLACE VIEW LIBROS_RESERVA ASselect l.cod_libro, l.titulo, l.agno, b.biblioteca, a.nombres, a.apellidos, e.nombre, e.pais, t.tipo_pfrom libros l, autores a, editoriales e, biblioteca b, tipo twhere a.rut_autor=l.rut_autorand e.id_edit=l.id_editand t.id_tipo=l.id_tipoand TIPO_P = 'RESERVA'
2.-Se requiere obtener datos desde la Base de Datos y almacenarlos de forma permanente (Vista). Se solicita:
a)
CREATE OR REPLACE VIEW LIBROS_PRESTADOS_TEJA ASselect e.nombres, c.nombre, p.fecha_pfrom estudiantes e, campus c, prestamo pwhere e.rut_est=p.rut_estand c.nombre='ISLA TEJA'
b)
CREATE OR REPLACE VIEW ESTUDIANTES_CARRERA ASselect rut_est, e.nombres, e.apellidos, c.nombre as carrerasfrom estudiantes e, carreras cwhere e.id_carrera=c.id_carrera
c)
CREATE OR REPLACE VIEW DETALLE_LIBROS_PRESTADOS ASselect e.rut_est, e.nombres, e.apellidos, c.nombre as carreras, p.cod_libro,l.titulo, l.agno, a.nombres as autores, a.apellidos as apellidos_autores, ed.nombre, ed.pais, b.biblioteca, t.tipo_pfrom estudiantes e, carreras c, prestamo p, libros l, autores a, editoriales ed, biblioteca b, tipo twhere e.id_carrera=c.id_carreraand e.rut_est=p.rut_estand p.cod_libro=l.cod_libroand l.id_tipo=t.id_tipoand l.rut_autor=a.rut_autorand l.id_edit=ed.id_editand l.id_biblio=b.id_biblio
d)
CREATE OR REPLACE VIEW DETALLE_PRESTAMOS_FUNCIONARIOS ASselect e.rut_est, e.nombres, e.apellidos, c.nombre as carreras, p.cod_libro,l.titulo, l.agno, a.nombres as autores, a.apellidos as apellidos_autores, ed.nombre, ed.pais, b.biblioteca, t.tipo_p, f.nombres as funcionarios, f.rut_func, f.apellidos as apellidos_funcionariosfrom estudiantes e, carreras c, prestamo p, libros l, autores a, editoriales ed, biblioteca b, tipo t, funcionarios fwhere e.id_carrera=c.id_carreraand e.rut_est=p.rut_estand p.cod_libro=l.cod_libroand l.id_tipo=t.id_tipoand l.rut_autor=a.rut_autorand l.id_edit=ed.id_editand l.id_biblio=b.id_biblio
e)
CREATE OR REPLACE VIEW DETALLE_PRESTAMO ASselect e.rut_est, e.nombres, e.apellidos, c.nombre as carreras, p.cod_libro,l.titulo,
l.agno, a.nombres as autores, a.apellidos as apellido_autores, ed.nombre, ed.pais, b.biblioteca, t.tipo_p, f.nombres as funcionarios, f.rut_func, f.apellidos as apellidos_funcionarios, p.fecha_p, p.fecha_efrom estudiantes e, carreras c, prestamo p, libros l, autores a, editoriales ed, biblioteca b, tipo t, funcionarios fwhere e.id_carrera=c.id_carreraand e.rut_est=p.rut_estand p.cod_libro=l.cod_libroand l.id_tipo=t.id_tipoand l.rut_autor=a.rut_autorand l.id_edit=ed.id_editand l.id_biblio=b.id_biblio
3.- Se solicita obtener lo siguiente (vistas):
a)
CREATE OR REPLACE VIEW ESTUDIANTES_CARRERA ASSELECT c.nombre,count(e.nombres) as cantidad_estFROM estudiantes e, carreras cWHERE c.id_carrera=e.id_carreraGROUP BY c.nombre
b)
CREATE OR REPLACE VIEW ESTUDIANTES_CAMPUS ASSELECT c.nombre as campus, count(e.rut_est)as cantidad_estudFROM campus c, estudiantes e, carreras caWHERE c.id_campus=ca.id_campusAND ca.id_carrera=e.id_carreraGROUP BY c.nombre
c)
CREATE OR REPLACE VIEW ESTUDIANTES_CIUDAD ASSELECT c.nombre as ciudad, count(e.rut_est)as cantidad_estudFROM ciudad c, estudiantes e, campus ca, carreras carWHERE c.id_ciudad=ca.id_ciudadAND ca.id_campus=car.id_campusAND car.id_carrera=e.id_carreraGROUP BY c.nombre
d)
CREATE OR REPLACE VIEW PRESTAMOS_ATRASADOS ASSELECT count(p.fecha_e) as prest_atrasadosFROM prestamo pWHERE p.fecha_e<trunc(sysdate)
e)
CREATE OR REPLACE VIEW PRESTAMOS_ACTIVOS ASSELECT count(p.fecha_e) as prest_activosFROM prestamo pWHERE p.fecha_e>trunc(sysdate)