Advertisement
Guest User

Untitled

a guest
Apr 16th, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.78 KB | None | 0 0
  1.  Wskazać tych studentów, którzy zdawali egzaminy w ciągu trzech ostatnich dni egzaminowania. W odpowiedzi umieścić datę egzaminu oraz dane
  2. identyfikujące studenta tj. identyfikator, imię i nazwisko.
  3. DECLARE
  4.  I NUMBER DEFAULT 0;
  5.  VDATA DATE;
  6.  CURSOR CDATA IS
  7.  SELECT DISTINCT DATA_EGZ
  8.  FROM EGZAMINY
  9.  ORDER BY DATA_EGZ DESC;
  10.  
  11.  CURSOR CSTU(VDATA DATE) IS
  12.  SELECT s.IMIE,s.NAZWISKO,e.DATA_EGZ
  13.  FROM STUDENCI s
  14.  JOIN EGZAMINY e ON e.ID_STUDENT = s.ID_STUDENT
  15.  WHERE DATA_EGZ = VDATA ;
  16.  
  17.  BEGIN
  18.  OPEN CDATA;
  19.  IF CDATA %ISOPEN THEN
  20.  FOR i IN 1..3 LOOP
  21.  FETCH CDATA INTO VDATA ;
  22.  EXIT WHEN CDATA%NOTFOUND;
  23.  FOR dane IN CSTU(VDATA) LOOP
  24.  DBMS_OUTPUT.PUT_LINE(i || ' '|| dane.Imie || ' '||dane.nazwisko || ' '|| VDATA);
  25.  END LOOP;
  26.  END LOOP;
  27.  CLOSE CDATA;
  28.  END IF;
  29.  END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement