Ver Mensaje Individual
  #7 (permalink)  
Antiguo 06/06/2013, 21:50
k0m3t4
 
Fecha de Ingreso: junio-2013
Mensajes: 16
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Problema con cursor en pl/sql

ya ahora si coloco el codigo casi final ya que solo me falta afinar un detalle el cual es mostrar la cantidad de empleados en la siguiente forma:

35 United Kingd GRAN SUCURSAL
68 United State GRAN SUCURSAL
1 Germany PEQUEÑA SUCURSAL
2 Canada PEQUEÑA SUCURSAL

pero es un pelo de la cola lo que me queda =)

Código:
set serveroutput on
declare
c_empleados numeric;
c_paises varchar2(40);

cursor empleados_cursor is
select f.country_name, count(distinct employee_id)
from employees E, departments D, locations L, countries F
where E.department_id = D.department_id
    and  D.location_id = L.location_id
    and L.country_id = F.country_id
group by F.country_name;


begin
 
dbms_output.put_line('                          EMPLEADO POR PAISES                           ');
dbms_output.put_line('========================================================================');
dbms_output.put_line(RPAD('CANTIDAD EMPLEADOS',25)||RPAD('PAIS',30)||RPAD('CATEGORIA',20) );
dbms_output.put_line('========================================================================'); 
open empleados_cursor;
  loop
    fetch empleados_cursor
    into c_paises,c_empleados;
      exit when empleados_cursor%notfound;
      IF (c_empleados < 10 ) then
        dbms_output.put_line(RPAD(c_empleados,25)||RPAD(upper(c_paises),30)||RPAD('PEQUEÑA SUCURSAL',20) );
      else
        dbms_output.put_line(RPAD(c_empleados,25)||RPAD(upper(c_paises),30)||RPAD('GRAN SUCURSAL',20) );
      end if;
  end loop;
close empleados_cursor;
end;

P.D: gracias por darte el tiempo de editar mis post y colocar los codigos como se debe ya que aun no encuentro como colocarlo como tu lo haces para que se vea mas ordenado cuando los posteo.

Última edición por k0m3t4; 06/06/2013 a las 22:03