Advertisement
Guest User

Untitled

a guest
Apr 16th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.97 KB | None | 0 0
  1. . Wskazać 3 ostatnie dni, w których przeprowadzono egzamin
  2.  DECLARE CURSOR c1 IS SELECT DISTINCT data_egz FROM egzaminy ORDER BY 1 DESC; BEGIN FOR vc1 IN c1 LOOP DBMS_OUTPUT.PUT_LINE(vc1.data_egz); EXIT WHEN c1%ROWCOUNT > 2; END LOOP; END
  3.  
  4.  
  5.  
  6. Wskazać tych studentów, którzy zdawali egzaminy w ciągu trzech ostatnich dni egzaminowania. W odpowiedzi umieścić datę egzaminu oraz dane identyfikujące studenta tj. identyfikator, imię i nazwisko.
  7.  
  8. DECLARE I NUMBER DEFAULT 0; VDATA DATE; CURSOR CDATA IS SELECT DISTINCT DATA_EGZ FROM EGZAMINY ORDER BY DATA_EGZ DESC; CURSOR CSTU(VDATA DATE) IS SELECT s.IMIE,s.NAZWISKO,e.DATA_EGZ FROM STUDENCI s JOIN EGZAMINY e ON e.ID_STUDENT = s.ID_STUDENT WHERE DATA_EGZ = VDATA ; BEGIN OPEN CDATA; IF CDATA %ISOPEN THEN FOR i IN 1..3 LOOP FETCH CDATA INTO VDATA ; EXIT WHEN CDATA%NOTFOUND; FOR dane IN CSTU(VDATA) LOOP DBMS_OUTPUT.PUT_LINE(i || ' '|| dane.Imie || ' '||dane.nazwisko || ' '|| VDATA); END LOOP; END LOOP; CLOSE CDATA; END IF; END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement