Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 1.49 KB | None | 0 0
  1. CREATE OR REPLACE PROCEDURE ejer6ciclista
  2. IS
  3.  
  4. CURSOR cursor1 IS SELECT ciclista.nomeq, ciclista.nombre,ciclista.dorsal, COUNT(llevar.codigo)
  5.                FROM ciclista,llevar
  6.                WHERE ciclista.dorsal=llevar.dorsal
  7.                GROUP BY ciclista.nomeq, ciclista.nombre, ciclista.dorsal
  8.                ORDER BY ciclista.nomeq, COUNT(llevar.codigo);
  9.  
  10.  
  11. nom ciclista.nombre%TYPE;
  12. etapas NUMBER(4);
  13. equip ciclista.nomeq%TYPE;
  14. nommai maillot.tipo%TYPE;
  15. fech llevar.fecha%TYPE;
  16. vdorsal ciclista.dorsal%TYPE;
  17. vnomequip ciclista.nomeq%TYPE := '';
  18.  
  19. CURSOR cursor2 IS SELECT maillot.tipo, llevar.fecha
  20.                    FROM maillot, llevar
  21.                    WHERE maillot.codigo=llevar.codigo
  22.                    AND dorsal= vdorsal
  23.                    ORDER BY fecha;
  24.  
  25. BEGIN
  26.  
  27. OPEN cursor1;
  28.       LOOP
  29.       FETCH cursor1 INTO equip, nom, vdorsal, etapas;
  30.       EXIT WHEN cursor1%notfound;
  31.        
  32.                          
  33.              IF (vnomequip=equip) THEN
  34.             DBMS_OUTPUT.put_line(' ');
  35.          ELSE
  36.             DBMS_OUTPUT.put_line(' Equipo: ' || equip);            
  37.            
  38.                 vnomequip := equip;
  39.          END IF;
  40.             DBMS_OUTPUT.put_line(' Ciclista: ' || nom || ' - Total de maillots: ' || etapas);
  41.  
  42.         OPEN cursor2;
  43.         LOOP
  44.            
  45.                 FETCH cursor2 INTO nommai, fech;
  46.                 EXIT WHEN cursor2%notfound;
  47.                    DBMS_OUTPUT.put_line(' Maillot: ' || nommai || ' (' || fech || ') ');
  48.             END LOOP;
  49.         CLOSE cursor2;
  50.       END LOOP;
  51. CLOSE cursor1;
  52.  
  53.  
  54. END;
  55. /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement