Advertisement
Guest User

Untitled

a guest
May 2nd, 2016
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.93 KB | None | 0 0
  1. SET serveroutput ON;
  2. CREATE OR REPLACE PROCEDURE perc_objednavok (hladany_dodavatel IN VARCHAR2)
  3. IS
  4.     CURSOR dodobj IS SELECT * FROM OBJEDNAVKY INNER JOIN DODAVATELIA ON OBJEDNAVKY.ID_DOD = DODAVATELIA.ID_DOD;
  5.     obj dodobj%ROWTYPE;
  6.     pocet NUMBER;
  7.     celkom NUMBER;
  8. BEGIN
  9.     pocet := 1;
  10.     celkom := 0;
  11.     OPEN dodobj;
  12.     LOOP
  13.         FETCH dodobj INTO obj;
  14.         IF (obj.ID_DOD > 0)THEN-- hladany_dodavatel) THEN potom dorobic
  15.             pocet := pocet + 1;
  16.         END IF;
  17.         celkom := celkom +1;
  18.     END LOOP;
  19.     dbms_output.put_line('Percentualny podiel objednaavok od dodavatela '|| hladany_dodavatel ||' je ' || pocet/celkom*100 || '%');
  20.  
  21. EXCEPTION
  22.     WHEN NO_DATA_FOUND THEN --ak zadame neexistujuceho dodavatela
  23.         dbms_output.put_line('CHYBA: Prazdna tabulka');
  24.     WHEN OTHERS THEN
  25.         Raise_Application_Error (-20206, 'CHYBA');
  26. END;
  27. /
  28. SHOW ERRORS;
  29.  
  30. EXEC PERC_OBJEDNAVOK;
  31. SHOW ERRORS;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement