SlideShare una empresa de Scribd logo
1 de 6
Actividad Ayudantía:

Guía de repaso 25-06-2012




Sistema de Información Administrativa



Profesor Responsable: Cristian Salazar

     Ayudante: Jose Luis Carrasco




    Alumna: Nidia Manríquez Solís
              Auditoria
Ejercicios Propuestos:
1.- Realice una cadena de inserciones, esto es:
- Crear un procedimiento para agregar Ciudades.

       SQL:    create or replace procedure agregar_ciudad(id_ciudad in number, nom_ciudad in
               varchar2)is
               begin
               insert into ciudad (id_ciudad, nombre)
               values (id_ciudad, nom_ciudad);
               commit;
               end agregar_ciudad;

- Crear un procedimiento para agregar Campus.

       SQL:    create or replace procedure agregar_campus(id_campus in number, nom_campus
               in varchar2, id_ciudad in number)is
               begin
               insert into campus (id_campus, nombre, id_ciudad)
               values (id_campus, nom_campus, id_ciudad);
               commit;
               end agregar_campus;

- Crear un procedimiento para agregar Carreras

       SQL:    create or replace procedure agregar_carreras(id_carrera in number, nom_carrera
               in varchar2, id_campus in number)is
               begin
               insert into carreras (id_carrera, nombre, id_campus)
               values (id_carrera, nom_carrera, id_campus);
               commit;
               end agregar_carreras;


- Crear un procedimiento para agregar Estudiantes.

       SQL:    create or replace procedure agregar_estudiantes(rut_est in number,
               nom_estudiante in varchar2, nom_apellido in varchar2, edad in number, fono in
               number, direccion in varchar2, id_carrera in number)is
               begin
               insert into estudiantes (rut_est, nombres, apellidos, edad, fono, direccion,
               id_carrera)
               values (rut_est, nom_estudiante, nom_apellido, edad, fono, direccion, id_carrera);
               commit;
               end agregar_estudiantes;
2.- Realice un procedimiento que actualice la edad de los estudiantes a partir de su RUT.

       SQL:    create or replace procedure actualiza_edad(rut_est_act in number, edad_act in
               number) is
               begin
               update estudiantes
               set edad = edad_act
               where rut_est = rut_est_act;
               commit;
               end actualiza_edad;


3.- Realice una función que entregue la edad promedio de los estudiantes de “PED. EN
EDUCACIÓN DIFERENCIAL”.

        SQL:   create or replace function edad_promedio(nombre_carrera in varchar2)
               return number is
               valor_est_diferencial number;
               begin
               select AVG(e.edad)
               into valor_est_diferencial
               from estudiantes e, carreras c
               where e.id_carrera = c.id_carrera
               and c.nombre = nombre_carrera;
               return valor_est_diferencial;
               end edad_promedio;

4.- Realice una función que entregue la suma de edades de los estudiantes del campus ISLA TEJA.
La función debe llamarse SUMA_TEJA.

       SQL:    create or replace function SUMA_TEJA(nombre_campus in varchar2)
               return number is
               valor_sum_teja number;
               begin
               select sum(e.edad)
               into valor_sum_teja
               from estudiantes e, carreras c, campus cs
               where e.id_carrera = c.id_carrera
               and c.id_campus = cs.id_campus
               and cs.nombre = nombre_campus;
               return valor_sum_teja;
               end SUMA_TEJA;
5.- Realice una función que cuente los estudiantes del campus ISLA TEJA. La función debe llamarse
CUENTA_TEJA.

        SQL: create or replace function CUENTA_TEJA(nombre_campus in varchar2)
        return number is
        valor_cuenta_teja number;
        begin
        select count(*)
        into valor_cuenta_teja
        from estudiantes e, carreras c, campus cs
        where e.id_carrera = c.id_carrera
        and c.id_campus = cs.id_campus
        and cs.nombre = nombre_campus;
        return valor_cuenta_teja;
        end CUENTA_TEJA;




6.- Una vez realizado 4 y 5, ejecute la siguiente consulta y describa que arroja como resultado:
SELECT (SUMA_TEJA/CUENTA_TEJA) as NX
FROM DUAL;

La consulta entrega el promedio de edades de los alumnos del Campus Teja.
7.- (RESUELTO) Entregue el número total de estudiantes de cada una de las carreras, mostrando el
nombre de la carrera y su número de estudiantes respectivos:
SELECT c.NOMBRE as CARRERA,count(e.RUT_EST) as N_ESTUDIANTES
FROM ESTUDIANTES e, CARRERAS c
where e.ID_CARRERA = c.ID_CARRERA
GROUP BY c.NOMBRE




8.- Entregue el número total de estudiantes de cada uno de los campus de forma similar al
ejercicio 7.

       SQL:    SELECT cm.NOMBRE as NOMBRE_CARRERA,count(e.RUT_EST) as NUMERO_ESTUD
               FROM ESTUDIANTES e, CARRERAS c, CAMPUS cm
               where e.ID_CARRERA = c.ID_CARRERA
               GROUP BY cm.NOMBRE
9.- Entregue el número total de estudiantes de cada una de las ciudades de forma similar al
ejercicio 7.


       SQL:    SELECT ciu.NOMBRE as CAMPUS, count(e.RUT_EST) as NUMERO_ESTUD
               FROM ESTUDIANTES e, CARRERAS c, CAMPUS cm, CIUDAD ciu
               where e.ID_CARRERA = c.ID_CARRERA
               and c.Id_Campus = cm.id_campus
               and cm.Id_Ciudad = ciu.id_ciudad
               GROUP BY ciu.NOMBRE

Más contenido relacionado

Similar a Guía repaso SI: cadenas inserción, funciones edad promedio

Similar a Guía repaso SI: cadenas inserción, funciones edad promedio (20)

Laboratorio Nº 4
Laboratorio Nº 4Laboratorio Nº 4
Laboratorio Nº 4
 
Laboratorio
LaboratorioLaboratorio
Laboratorio
 
Tarea 3
Tarea 3Tarea 3
Tarea 3
 
Trabajo sistemas
Trabajo sistemasTrabajo sistemas
Trabajo sistemas
 
Trabajo 2. ayudantía. elmar alarcón namuncura
Trabajo 2. ayudantía. elmar alarcón namuncuraTrabajo 2. ayudantía. elmar alarcón namuncura
Trabajo 2. ayudantía. elmar alarcón namuncura
 
Tarea ayudantia nº2
Tarea ayudantia nº2Tarea ayudantia nº2
Tarea ayudantia nº2
 
PLSQL
PLSQLPLSQL
PLSQL
 
Laboratorio 2
Laboratorio 2Laboratorio 2
Laboratorio 2
 
Herencia clase
Herencia claseHerencia clase
Herencia clase
 
Laboratorio14.05.2012
Laboratorio14.05.2012Laboratorio14.05.2012
Laboratorio14.05.2012
 
Informe tecnico de la unidad 1
Informe tecnico de la unidad 1Informe tecnico de la unidad 1
Informe tecnico de la unidad 1
 
Trabajo ayudantía
Trabajo ayudantíaTrabajo ayudantía
Trabajo ayudantía
 
Laboratorio n2 de ayudantía sie
Laboratorio n2 de ayudantía  sieLaboratorio n2 de ayudantía  sie
Laboratorio n2 de ayudantía sie
 
Lab 25 06
Lab 25 06Lab 25 06
Lab 25 06
 
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)
 
Tallerprogramacion
TallerprogramacionTallerprogramacion
Tallerprogramacion
 
Clase 2
Clase 2 Clase 2
Clase 2
 
13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase13 Curso de POO en java - métodos propios de clase
13 Curso de POO en java - métodos propios de clase
 
Practica9 bases de datos
Practica9 bases de datosPractica9 bases de datos
Practica9 bases de datos
 

Guía repaso SI: cadenas inserción, funciones edad promedio

  • 1. Actividad Ayudantía: Guía de repaso 25-06-2012 Sistema de Información Administrativa Profesor Responsable: Cristian Salazar Ayudante: Jose Luis Carrasco Alumna: Nidia Manríquez Solís Auditoria
  • 2. Ejercicios Propuestos: 1.- Realice una cadena de inserciones, esto es: - Crear un procedimiento para agregar Ciudades. SQL: create or replace procedure agregar_ciudad(id_ciudad in number, nom_ciudad in varchar2)is begin insert into ciudad (id_ciudad, nombre) values (id_ciudad, nom_ciudad); commit; end agregar_ciudad; - Crear un procedimiento para agregar Campus. SQL: create or replace procedure agregar_campus(id_campus in number, nom_campus in varchar2, id_ciudad in number)is begin insert into campus (id_campus, nombre, id_ciudad) values (id_campus, nom_campus, id_ciudad); commit; end agregar_campus; - Crear un procedimiento para agregar Carreras SQL: create or replace procedure agregar_carreras(id_carrera in number, nom_carrera in varchar2, id_campus in number)is begin insert into carreras (id_carrera, nombre, id_campus) values (id_carrera, nom_carrera, id_campus); commit; end agregar_carreras; - Crear un procedimiento para agregar Estudiantes. SQL: create or replace procedure agregar_estudiantes(rut_est in number, nom_estudiante in varchar2, nom_apellido in varchar2, edad in number, fono in number, direccion in varchar2, id_carrera in number)is begin insert into estudiantes (rut_est, nombres, apellidos, edad, fono, direccion, id_carrera) values (rut_est, nom_estudiante, nom_apellido, edad, fono, direccion, id_carrera); commit; end agregar_estudiantes;
  • 3. 2.- Realice un procedimiento que actualice la edad de los estudiantes a partir de su RUT. SQL: create or replace procedure actualiza_edad(rut_est_act in number, edad_act in number) is begin update estudiantes set edad = edad_act where rut_est = rut_est_act; commit; end actualiza_edad; 3.- Realice una función que entregue la edad promedio de los estudiantes de “PED. EN EDUCACIÓN DIFERENCIAL”. SQL: create or replace function edad_promedio(nombre_carrera in varchar2) return number is valor_est_diferencial number; begin select AVG(e.edad) into valor_est_diferencial from estudiantes e, carreras c where e.id_carrera = c.id_carrera and c.nombre = nombre_carrera; return valor_est_diferencial; end edad_promedio; 4.- Realice una función que entregue la suma de edades de los estudiantes del campus ISLA TEJA. La función debe llamarse SUMA_TEJA. SQL: create or replace function SUMA_TEJA(nombre_campus in varchar2) return number is valor_sum_teja number; begin select sum(e.edad) into valor_sum_teja from estudiantes e, carreras c, campus cs where e.id_carrera = c.id_carrera and c.id_campus = cs.id_campus and cs.nombre = nombre_campus; return valor_sum_teja; end SUMA_TEJA;
  • 4. 5.- Realice una función que cuente los estudiantes del campus ISLA TEJA. La función debe llamarse CUENTA_TEJA. SQL: create or replace function CUENTA_TEJA(nombre_campus in varchar2) return number is valor_cuenta_teja number; begin select count(*) into valor_cuenta_teja from estudiantes e, carreras c, campus cs where e.id_carrera = c.id_carrera and c.id_campus = cs.id_campus and cs.nombre = nombre_campus; return valor_cuenta_teja; end CUENTA_TEJA; 6.- Una vez realizado 4 y 5, ejecute la siguiente consulta y describa que arroja como resultado: SELECT (SUMA_TEJA/CUENTA_TEJA) as NX FROM DUAL; La consulta entrega el promedio de edades de los alumnos del Campus Teja.
  • 5. 7.- (RESUELTO) Entregue el número total de estudiantes de cada una de las carreras, mostrando el nombre de la carrera y su número de estudiantes respectivos: SELECT c.NOMBRE as CARRERA,count(e.RUT_EST) as N_ESTUDIANTES FROM ESTUDIANTES e, CARRERAS c where e.ID_CARRERA = c.ID_CARRERA GROUP BY c.NOMBRE 8.- Entregue el número total de estudiantes de cada uno de los campus de forma similar al ejercicio 7. SQL: SELECT cm.NOMBRE as NOMBRE_CARRERA,count(e.RUT_EST) as NUMERO_ESTUD FROM ESTUDIANTES e, CARRERAS c, CAMPUS cm where e.ID_CARRERA = c.ID_CARRERA GROUP BY cm.NOMBRE
  • 6. 9.- Entregue el número total de estudiantes de cada una de las ciudades de forma similar al ejercicio 7. SQL: SELECT ciu.NOMBRE as CAMPUS, count(e.RUT_EST) as NUMERO_ESTUD FROM ESTUDIANTES e, CARRERAS c, CAMPUS cm, CIUDAD ciu where e.ID_CARRERA = c.ID_CARRERA and c.Id_Campus = cm.id_campus and cm.Id_Ciudad = ciu.id_ciudad GROUP BY ciu.NOMBRE