SlideShare una empresa de Scribd logo
1 de 6
UNIVERSIDAD AUSTRAL DE CHILE
FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS
              ESCUELA DE AUDITORÍA




CURSO: SISTEMA DE INFORMACIÓN ADMINISTRATIVAS




             LABORATORIO Nº3 SIA




                Profesor: Cristian Salazar


                 Alumno: Franco Osses.




              Valdivia, Mayo del 2012.

                                                    1
Laboratorio Nº 3


1) Se solicita realizar una consulta que entregue a los estudiantes atrasados en la entrega de
   sus préstamos de libros, e indicar la cantidad de días de atraso para cada préstamo. Los
   campos a mostrar son: Rut del estudiante, Nombres, Apellidos y el N° de días de atraso.
   Ayuda: Usar la fecha del sistema denominada por SYSDATE, y usar la función
   TRUNC para quitar las horas, minutos y segundos de las fechas.


   R:
   select p.rut_est, e.nombres, e.apellidos, l.titulo, (trunc(sysdate) - trunc(p.fecha_e)) as
   ATRASO
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)




2) Si cada día efectivo de atraso tiene un valor de $1250, entregue los mismo que en (1), pero
   agregando una nueva columna con la deuda adquirida por cada estudiante. Ayuda: Para
   multiplicar se usa el *, entonces si se desea multiplicar A por B, sería A*B.


   R:
   select p.rut_est, e.nombres, e.apellidos, l.titulo, (trunc(sysdate) - trunc(p.fecha_e)) as
   ATRASO, (trunc(sysdate) - trunc(p.fecha_e))*1250 as DEUDA
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)
3) Entregue la suma de dinero que ganará la Biblioteca acumulada al día de hoy. Ayuda: Para
   hacer la suma se usa la función SUM y la función GROUP BY.


   R:
   select SUM (trunc(sysdate) - trunc(p.fecha_e))*1250 AS INGRESO_BIBLIO
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)




4) Entregue el promedio de deuda que tienen los estudiantes al día de hoy. Ayuda: Para
   calcular el promedio se usa la función AVG y la función GROUP BY.


   R:
   select ROUND(AVG ((trunc(sysdate) - trunc(p.fecha_e))*1250)) AS PROM_DEUDA
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)


5) Entregue la mínima deuda acumulada al día de hoy. Ayuda: Utilice la función MIN y la
   función GROUP BY.


   R:
   select MIN ((trunc(sysdate) - trunc(p.fecha_e))*1250) AS MIN_DEUDA
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)
6) Entregue la máxima deuda acumulada al día de hoy. Ayuda: utilice la función MAX y la
   función GROUP BY.


   R:
   select MAX ((trunc(sysdate) - trunc(p.fecha_e))*1250) AS MIN_DEUDA
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate) > trunc(p.fecha_e)


7) Suponiendo que ninguno de los estudiantes que se encuentran con préstamo entrega sus
   libros, cual será la deuda acumulada para 4 días más. Ayuda: Para sumar un días a una
   fecha se hace de la siguiente forma: FECHA + N, donde N es la cantidad de días a
   sumar y FECHA es la fecha a la cual le estamos sumandos días. Para el caso de la
   fecha de hoy, sería SYSDATE + N.


   R:
   select SUM((trunc(sysdate+4) - trunc(p.fecha_e))*1250) AS DEUDA_4_DIAS
   from prestamo p, estudiantes e, libros l
   where p.rut_est = e.rut_est
   and p.cod_libro = l.cod_libro
   and trunc(sysdate+4) > trunc(p.fecha_e)
8) En su sistema de Base de Datos se encuentran 2 Vistas (Views), una llamada MAXIMO y
   otra llamada MINIMO. Describa claramente que entregan cada una de ellas, haciendo
   análisis de cada parte de la consulta. Ayuda: Busque información sobre Sub-Consultas.
   La sub-consulta Max y Min muestra lo siguiente:
   MAX: Esta consulta muestra el rut, apellido, nombre y titulo de del libro de la persona que
   deba la mayor cantidad de dinero en biblioteca por atraso en la entrega (Este valor es
   sacado con la diferencia entre la fecha actual y fecha entrega de la tabla prestamos).
   MIN: Esta consulta muestra el rut, apellido, nombre y titulo de del libro de la persona que
   deba la menor cantidad de dinero en biblioteca por atraso en la entrega (Este valor es
   sacado con la diferencia entre la fecha actual y fecha entrega de la tabla prestamos).


9) Entregue el nombre de la carrera y la cantidad de estudiantes por cada una de ellas que
   tiene libros atrasados. Ayuda: Use la función COUNT y la función GROUP BY.
   R:
   select COUNT(e.rut_est), c.nombre
   from prestamo p, estudiantes e, carreras c
   where p.rut_est = e.rut_est
   AND e.id_carrera = c.id_carrera
   and trunc(sysdate) > trunc(p.fecha_e)
   group by c.nombre




10) Los mismo que en (9) pero esta vez que entregue la cantidad de estudiantes que tiene un
   libro en préstamo ya sea atrasado o al día.
   R:
   select COUNT(e.rut_est), c.nombre
   from prestamo p, estudiantes e, carreras c
   where p.rut_est = e.rut_est
   AND e.id_carrera = c.id_carrera
   group by c.nombre
11) Investigue como entregar las 10 carreras que tienen mayor cantidad de libros en préstamo.
   Ayuda: Se usa un tipo de función llamada ROWNUM y la función ORDER BY.
   R:
   select * from (
   select COUNT(e.rut_est), c.nombre
   from prestamo p, estudiantes e, carreras c
   where p.rut_est = e.rut_est
   AND e.id_carrera = c.id_carrera
   group by c.nombre
   order by COUNT(e.rut_est) desc)
   where rownum <=10

Más contenido relacionado

Destacado

Laboratorio Nº5 SIA
Laboratorio Nº5 SIA Laboratorio Nº5 SIA
Laboratorio Nº5 SIA Franco Rios
 
Ensayo sia auditoría informatica 29.05.2011
Ensayo sia auditoría informatica 29.05.2011Ensayo sia auditoría informatica 29.05.2011
Ensayo sia auditoría informatica 29.05.2011Jose Olivera
 
Los negocios no han cambiado las empresas si
Los negocios no han cambiado las empresas siLos negocios no han cambiado las empresas si
Los negocios no han cambiado las empresas siCristian Salazar C.
 
Las tic en los procesos genéricos de rrhh
Las tic en los procesos genéricos de rrhhLas tic en los procesos genéricos de rrhh
Las tic en los procesos genéricos de rrhhCristian Salazar C.
 
Codigo QR (direccionado a mi Facebook)
Codigo QR (direccionado a mi Facebook)Codigo QR (direccionado a mi Facebook)
Codigo QR (direccionado a mi Facebook)Franco Rios
 

Destacado (7)

Laboratorio Nº5 SIA
Laboratorio Nº5 SIA Laboratorio Nº5 SIA
Laboratorio Nº5 SIA
 
Lab5 sql
Lab5 sqlLab5 sql
Lab5 sql
 
Ensayo sia auditoría informatica 29.05.2011
Ensayo sia auditoría informatica 29.05.2011Ensayo sia auditoría informatica 29.05.2011
Ensayo sia auditoría informatica 29.05.2011
 
Los negocios no han cambiado las empresas si
Los negocios no han cambiado las empresas siLos negocios no han cambiado las empresas si
Los negocios no han cambiado las empresas si
 
Las tic en los procesos genéricos de rrhh
Las tic en los procesos genéricos de rrhhLas tic en los procesos genéricos de rrhh
Las tic en los procesos genéricos de rrhh
 
Insertar prezi en wordpress
Insertar prezi en wordpressInsertar prezi en wordpress
Insertar prezi en wordpress
 
Codigo QR (direccionado a mi Facebook)
Codigo QR (direccionado a mi Facebook)Codigo QR (direccionado a mi Facebook)
Codigo QR (direccionado a mi Facebook)
 

Similar a Laboratorio Nº 3 SIA (20)

Ayudantia 14 05
Ayudantia 14 05Ayudantia 14 05
Ayudantia 14 05
 
Segundo informe ayudantía
Segundo informe ayudantíaSegundo informe ayudantía
Segundo informe ayudantía
 
Tarea 2
Tarea 2Tarea 2
Tarea 2
 
Laboratorio14.05.2012
Laboratorio14.05.2012Laboratorio14.05.2012
Laboratorio14.05.2012
 
Laboratorio n° 2
Laboratorio n° 2Laboratorio n° 2
Laboratorio n° 2
 
Laboratorio n2 de ayudantía sie
Laboratorio n2 de ayudantía  sieLaboratorio n2 de ayudantía  sie
Laboratorio n2 de ayudantía sie
 
Laboratorio SIA - 2
Laboratorio SIA - 2Laboratorio SIA - 2
Laboratorio SIA - 2
 
Laboratorio sia 2 (1)
Laboratorio sia 2 (1)Laboratorio sia 2 (1)
Laboratorio sia 2 (1)
 
Tarea ahora
Tarea ahoraTarea ahora
Tarea ahora
 
Lab 2
Lab 2Lab 2
Lab 2
 
Lab 2
Lab 2Lab 2
Lab 2
 
Tarea sia
Tarea siaTarea sia
Tarea sia
 
Tarea+siaaa
Tarea+siaaaTarea+siaaa
Tarea+siaaa
 
PLSQL
PLSQLPLSQL
PLSQL
 
Laboratorio n° 1
Laboratorio n° 1Laboratorio n° 1
Laboratorio n° 1
 
Laboratorio N° 2
Laboratorio N° 2Laboratorio N° 2
Laboratorio N° 2
 
Trabajo ayudantía
Trabajo ayudantíaTrabajo ayudantía
Trabajo ayudantía
 
Tarea sia (2)
Tarea sia (2)Tarea sia (2)
Tarea sia (2)
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 

Laboratorio Nº 3 SIA

  • 1. UNIVERSIDAD AUSTRAL DE CHILE FACULTAD DE CIENCIAS ECONÓMICAS Y ADMINISTRATIVAS ESCUELA DE AUDITORÍA CURSO: SISTEMA DE INFORMACIÓN ADMINISTRATIVAS LABORATORIO Nº3 SIA Profesor: Cristian Salazar Alumno: Franco Osses. Valdivia, Mayo del 2012. 1
  • 2. Laboratorio Nº 3 1) Se solicita realizar una consulta que entregue a los estudiantes atrasados en la entrega de sus préstamos de libros, e indicar la cantidad de días de atraso para cada préstamo. Los campos a mostrar son: Rut del estudiante, Nombres, Apellidos y el N° de días de atraso. Ayuda: Usar la fecha del sistema denominada por SYSDATE, y usar la función TRUNC para quitar las horas, minutos y segundos de las fechas. R: select p.rut_est, e.nombres, e.apellidos, l.titulo, (trunc(sysdate) - trunc(p.fecha_e)) as ATRASO from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e) 2) Si cada día efectivo de atraso tiene un valor de $1250, entregue los mismo que en (1), pero agregando una nueva columna con la deuda adquirida por cada estudiante. Ayuda: Para multiplicar se usa el *, entonces si se desea multiplicar A por B, sería A*B. R: select p.rut_est, e.nombres, e.apellidos, l.titulo, (trunc(sysdate) - trunc(p.fecha_e)) as ATRASO, (trunc(sysdate) - trunc(p.fecha_e))*1250 as DEUDA from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e)
  • 3. 3) Entregue la suma de dinero que ganará la Biblioteca acumulada al día de hoy. Ayuda: Para hacer la suma se usa la función SUM y la función GROUP BY. R: select SUM (trunc(sysdate) - trunc(p.fecha_e))*1250 AS INGRESO_BIBLIO from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e) 4) Entregue el promedio de deuda que tienen los estudiantes al día de hoy. Ayuda: Para calcular el promedio se usa la función AVG y la función GROUP BY. R: select ROUND(AVG ((trunc(sysdate) - trunc(p.fecha_e))*1250)) AS PROM_DEUDA from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e) 5) Entregue la mínima deuda acumulada al día de hoy. Ayuda: Utilice la función MIN y la función GROUP BY. R: select MIN ((trunc(sysdate) - trunc(p.fecha_e))*1250) AS MIN_DEUDA from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e)
  • 4. 6) Entregue la máxima deuda acumulada al día de hoy. Ayuda: utilice la función MAX y la función GROUP BY. R: select MAX ((trunc(sysdate) - trunc(p.fecha_e))*1250) AS MIN_DEUDA from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate) > trunc(p.fecha_e) 7) Suponiendo que ninguno de los estudiantes que se encuentran con préstamo entrega sus libros, cual será la deuda acumulada para 4 días más. Ayuda: Para sumar un días a una fecha se hace de la siguiente forma: FECHA + N, donde N es la cantidad de días a sumar y FECHA es la fecha a la cual le estamos sumandos días. Para el caso de la fecha de hoy, sería SYSDATE + N. R: select SUM((trunc(sysdate+4) - trunc(p.fecha_e))*1250) AS DEUDA_4_DIAS from prestamo p, estudiantes e, libros l where p.rut_est = e.rut_est and p.cod_libro = l.cod_libro and trunc(sysdate+4) > trunc(p.fecha_e)
  • 5. 8) En su sistema de Base de Datos se encuentran 2 Vistas (Views), una llamada MAXIMO y otra llamada MINIMO. Describa claramente que entregan cada una de ellas, haciendo análisis de cada parte de la consulta. Ayuda: Busque información sobre Sub-Consultas. La sub-consulta Max y Min muestra lo siguiente: MAX: Esta consulta muestra el rut, apellido, nombre y titulo de del libro de la persona que deba la mayor cantidad de dinero en biblioteca por atraso en la entrega (Este valor es sacado con la diferencia entre la fecha actual y fecha entrega de la tabla prestamos). MIN: Esta consulta muestra el rut, apellido, nombre y titulo de del libro de la persona que deba la menor cantidad de dinero en biblioteca por atraso en la entrega (Este valor es sacado con la diferencia entre la fecha actual y fecha entrega de la tabla prestamos). 9) Entregue el nombre de la carrera y la cantidad de estudiantes por cada una de ellas que tiene libros atrasados. Ayuda: Use la función COUNT y la función GROUP BY. R: select COUNT(e.rut_est), c.nombre from prestamo p, estudiantes e, carreras c where p.rut_est = e.rut_est AND e.id_carrera = c.id_carrera and trunc(sysdate) > trunc(p.fecha_e) group by c.nombre 10) Los mismo que en (9) pero esta vez que entregue la cantidad de estudiantes que tiene un libro en préstamo ya sea atrasado o al día. R: select COUNT(e.rut_est), c.nombre from prestamo p, estudiantes e, carreras c where p.rut_est = e.rut_est AND e.id_carrera = c.id_carrera group by c.nombre
  • 6. 11) Investigue como entregar las 10 carreras que tienen mayor cantidad de libros en préstamo. Ayuda: Se usa un tipo de función llamada ROWNUM y la función ORDER BY. R: select * from ( select COUNT(e.rut_est), c.nombre from prestamo p, estudiantes e, carreras c where p.rut_est = e.rut_est AND e.id_carrera = c.id_carrera group by c.nombre order by COUNT(e.rut_est) desc) where rownum <=10