Laboratorio 2

8
Sistemas de Información Empresarial GUIA DE LABORATORIO: PLSQL Profesor: Cristian Salazar C. P. Ayudante: José Luis Carrasco Estudiante: Maruly Miranda Regina Madrid

Transcript of Laboratorio 2

Page 1: Laboratorio 2

Sistemas de Información Empresarial

GUIA DE LABORATORIO: PLSQL

Profesor: Cristian Salazar C. P. Ayudante: José Luis Carrasco

Estudiante: Maruly Miranda Regina Madrid

Page 2: Laboratorio 2

REALICE LAS SIGUIENTES VISTAS A) Estudiantes que son de Ingeniería Comercial (Nombre y Apellido del estudiante, Nombre de la carrera y Nombre del campus)

B) Estudiantes que son de Auditoria ((Nombre y Apellido del estudiante, Nombre de la carrera y Nombre del campus)

SELECT e.nombres, e.apellidos, c.nombre, cs.nombre

FROM estudiantes e, carreras c, campus cs

WHERE e.id_carrera=c.id_carrera

AND cs.id_campus=c.id_campus

AND c.nombre = 'ING. COMERCIAL';

SELECT e.nombres, e.apellidos, c.nombre, cs.nombre FROM estudiantes e, carreras c, campus cs WHERE e.id_carrera=c.id_carrera AND cs.id_campus=c.id_campus AND c.nombre = 'AUDITORIA';

Page 3: Laboratorio 2

C) Estudiantes que se atrasaron con la entrega de libros (Rut, Nombres, Apellidos, Fono)

D) Cantidad de libros prestados

E) Libros de editoriales extranjeras (Código, Titulo, Año y País de origen)

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 > '22/04/2012';

SELECT COUNT (*)

FROM prestamo

WHERE fecha_p <= sysdate;

SELECT a.cod_libro, a.titulo, a.agno, b.pais

FROM libros a, editoriales b

WHERE a.id_edit=b.id_edit

AND b.pais <> 'Chile';

Page 4: Laboratorio 2

SELECT L.COD_LIBRO, L.TITULO, L.AGNO AS AÑO, B.BIBLIOTECA, A.NOMBRES, A.APELLIDOS,

ED.NOMBRE AS EDITORIAL, ED.PAIS, T.TIPO_P

FROM LIBROS L, BIBLIOTECA B, AUTORES A, EDITORIALES ED, TIPO T

WHERE A.RUT_AUTOR=L.RUT_AUTOR

AND ED.ID_EDIT=L.ID_EDIT

AND B.ID_BIBLIO=L.ID_BIBLIO

AND T.ID_TIPO=L.ID_TIPO

AND T.TIPO_P='RESERVA';

F) Libros que son de reserva (Código, Titulo y Año del libro, Nombre de la biblioteca, Nombre y Apellido del autor, nombre de la editorial y el País.

Page 5: Laboratorio 2

1) .-Se requiere obtener datos desde la Base de Datos y almacenarlos de forma permanente (Vista). Se solicita: Los estudiantes del campus Isla Teja, que tienen libros en su poder (atrasados o no). Se debe entregar el RUT, NOMBRE y APELLIDOS del estudiante, además del NOMBRE de la carrera a la cual pertenece. 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. 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. NOTA: deberá añadir ALIAS al NOMBRE del estudiante, del funcionario, del autor y de la carrera para diferenciarlos.

SELECT a.rut_est, a.nombres, a.apellidos, b.nombre AS Carrera, c.nombre AS Campus, d.cod_libro, d.titulo, d.agno AS Año,

e.nombres, e.apellidos, f.pais, f.nombre AS Editorial,g.tipo_p AS Tipo, h.nombres, h.apellidos, h.rut_func, i.fecha_e,

i.fecha_p

FROM estudiantes a, carreras b, campus c, libros d, autores e, editoriales f, tipo g, funcionarios h, prestamo i,

biblioteca j

WHERE a.id_carrera=b.id_carrera

AND a.rut_est=i.rut_est

AND e.rut_autor=d.rut_autor

AND d.cod_libro=i.cod_libro

AND h.rut_func=i.rut_func

AND d.id_biblio=j.id_biblio

AND d.id_tipo=g.id_tipo

AND f.id_edit=d.id_edit

AND b.id_campus=c.id_campus

AND i.fecha_p>'17/04/2012'

AND c.nombre='ISLA TEJA';

Page 6: Laboratorio 2
Page 7: Laboratorio 2

3.- Se solicita obtener lo siguiente (consultas): a) El numero de Estudiantes por Carrera.

SELECT COUNT (E.RUT_EST) AS CANTIDAD_ESTUDIANTES, C.NOMBRE AS CARRERA

FROM ESTUDIANTES E, CARRERAS C

WHERE C.ID_CARRERA=E.ID_CARRERA

GROUP BY C.NOMBRE

ORDER BY C.NOMBRE ASC;

b) El numero de Estudiantes por Campus

SELECT COUNT (E.RUT_EST) AS CANTIDAD_ESTUDIANTES, CS.NOMBRE AS CAMPUS

FROM ESTUDIANTES E, CARRERAS C, CAMPUS CS

WHERE C.ID_CARRERA=E.ID_CARRERA

AND CS.ID_CAMPUS=C.ID_CAMPUS

GROUP BY CS.NOMBRE

ORDER BY CS.NOMBRE ASC;

c) El numero de Estudiantes por Ciudad

SELECT COUNT (E.RUT_EST), CD.NOMBRE

FROM ESTUDIANTES E, CARRERAS C, CAMPUS CS, CIUDAD CD

WHERE E.ID_CARRERA=C.ID_CARRERA

AND CS.ID_CAMPUS=C.ID_CAMPUS

AND CD.ID_CIUDAD=CS.ID_CIUDAD

GROUP BY CD.NOMBRE;

Page 8: Laboratorio 2

d) El numero de Préstamos atrasados

SELECT COUNT (*) AS LIBROS_ATRASADOS

FROM PRESTAMO P

WHERE P.FECHA_E > '18/04/2012';

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

SELECT COUNT(P.FECHA_E) AS NUMERO_PRESTAMOS_ACTIVOS

FROM PRESTAMO P

WHERE P.FECHA_E > '20-04-2012';