Advertisement
Guest User

Untitled

a guest
Apr 24th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.85 KB | None | 0 0
  1. DECLARE
  2. dataa VARCHAR2(10);
  3. userr VARCHAR(10);
  4. BEGIN
  5. SELECT TO_CHAR(sysdate, 'dd/mm/yyyy'), user into dataa, userr FROM DUAL;
  6. DBMS_OUTPUT.put_line(dataa || ' ' || userr);
  7. END;
  8. /
  9.  
  10. DECLARE
  11. z_imie VARCHAR2(10):='ANDRZEJ';
  12. z_nazwisko VARCHAR2(20):='NOWAK';
  13. z_wartosc NUMBER:=2790.50;
  14. BEGIN
  15. DBMS_OUTPUT.PUT_LINE('OSOBA ' || z_imie || ' ' || z_nazwisko || ' PENSJA: ' || z_wartosc);
  16. END;
  17. /
  18.  
  19. DECLARE
  20. z_wartosc NUMBER;
  21. BEGIN
  22. SELECT COUNT(id_pracownika) INTO z_wartosc FROM pracownicy WHERE TO_CHAR(data_zatrudnienia,'yyyy') = '2006';
  23. if MOD(z_wartosc,2) = 0 THEN
  24. DBMS_OUTPUT.PUT_LINE('W 2006 roku została zatrudniona parzysta liczba pracowników');
  25. ELSE
  26. DBMS_OUTPUT.PUT_LINE('W 2006 roku została zatrudniona nieparzysta liczba pracowników');
  27. END IF;
  28.  
  29. END;
  30. /
  31.  
  32.  
  33. DECLARE
  34. z_oid NUMBER:= 68;
  35. z_imie VARCHAR2(20);
  36. z_nazwisko VARCHAR2(20);
  37. z_dochody NUMBER;
  38. BEGIN
  39. SELECT imie, nazwisko, (12*pensja ) + NVL(dodatek,0) INTO z_imie,z_nazwisko,z_dochody FROM pracownicy WHERE id_pracownika = z_oid;
  40. DBMS_OUTPUT.PUT_LINE(z_imie || ' ' || z_nazwisko || ' Dochody ' || z_dochody);
  41. EXCEPTION
  42. when no_data_found then DBMS_OUTPUT.PUT_LINE('Nie ma osoby o identyfikatorze ' || z_oid);
  43. END;
  44. /
  45.  
  46.  
  47. DECLARE
  48. z_imie VARCHAR2(20);
  49. z_nazwisko VARCHAR2(20);
  50. z_pensja NUMBER;
  51. cursor prac IS SELECT SUBSTR(UPPER(imie), 1,1) || SUBSTR(UPPER(imie), 2,1) || SUBSTR(UPPER(imie), 3,1) || SUBSTR(LOWER(imie), 4,LENGTH(imie) - 3),
  52. SUBSTR(UPPER(nazwisko), 1,1) || SUBSTR(UPPER(nazwisko), 2,1) || SUBSTR(UPPER(nazwisko), 3,1) || SUBSTR(LOWER(nazwisko), 4,LENGTH(nazwisko) - 3), pensja INTO z_imie,z_nazwisko,z_pensja FROM pracownicy WHERE UPPER(zawod) = 'KASJER' ORDER BY pensja DESC;
  53. BEGIN
  54. open prac;
  55. LOOP
  56. FETCH prac INTO z_imie, z_nazwisko, z_pensja;
  57. EXIT WHEN prac%NOTFOUND;
  58. DBMS_OUTPUT.PUT_LINE(z_imie || ' ' || z_nazwisko || ' Dochody ' || z_pensja);
  59. END LOOP;
  60. END;
  61. /
  62.  
  63. DECLARE
  64. z_id VARCHAR2(20);
  65. z_min NUMBER;
  66. z_sr NUMBER;
  67. z_max NUMBER;
  68. z_ile NUMBER;
  69. cursor prac IS SELECT pl.nazwa, MIN(p.pensja), MAX(p.pensja), ROUND(AVG(p.pensja),2), COUNT(p.id_pracownika) FROM pracownicy p JOIN placowki pl ON p.id_placowki = pl.id_placowki GROUP BY pl.nazwa ;
  70. BEGIN
  71. open prac;
  72. LOOP
  73. FETCH prac INTO z_id, z_min, z_max, z_sr, z_ile;
  74. EXIT WHEN prac%NOTFOUND;
  75. DBMS_OUTPUT.PUT_LINE(z_id || ' ' || z_min || ' ' || z_sr || ' ' || z_ile);
  76. END LOOP;
  77. END;
  78. /
  79.  
  80.  
  81. DECLARE
  82. z_imie VARCHAR2(20);
  83. z_nazwisko VARCHAR2(20);
  84. z_zawod VARCHAR2(20);
  85. z_wyk VARCHAR2(20);
  86. cursor prac IS SELECT imie, nazwisko, zawod, poziom FROM pracownicy p JOIN wyksztalcenie w ON p.id_wyksztalcenia = w.id_wyksztalcenia ORDER BY nazwisko,imie ;
  87. BEGIN
  88. open prac;
  89. LOOP
  90. FETCH prac INTO z_imie, z_nazwisko, z_zawod, z_wyk;
  91. EXIT WHEN prac%NOTFOUND;
  92. DBMS_OUTPUT.PUT_LINE(z_imie || ' ' || z_nazwisko || ' , zawód ' || z_zawod || ', poziom wykształcenia: ' || z_wyk);
  93. END LOOP;
  94. END;
  95. /
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement