Advertisement
patryk

SBD_L01

Mar 4th, 2015
503
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 2.56 KB | None | 0 0
  1. SELECT 'Pracownik ' || NAZWISKO || ' zarabia ' || PLACA_POD/30 AS PLACA_DZIENNA FROM PRACOWNICY WHERE ID_ZESP = 10; -- PRZYKŁAD KONKATENACJI
  2. SELECT NAZWISKO, PLACA_POD * 12 + NVL(PLACA_DOD, 0) FROM PRACOWNICY; -- WYPISUJE DANE BEZ BŁĘDÓW (NVL ZAMIENIA NULL NA 0)
  3. SELECT DISTINCT ETAT FROM PRACOWNICY; -- WYPISUJE STANOWISKA BEZ DUPLIKATÓW (DISTINCT MUSI WYSTĄPIĆ PIERWSZE W SELECT!)
  4. SELECT NAZWISKO, ETAT, PLACA_POD * 12 AS ROCZNE_ZAROBKI FROM PRACOWNICY ORDER BY ETAT DESC, ROCZNE_ZAROBKI ASC, 1; -- SORTOWANIE WEDŁUG ETATU MALEJĄCO
  5. SELECT NAZWISKO, PLACA_DOD FROM PRACOWNICY ORDER BY PLACA_DOD DESC NULLS LAST; -- SORTOWANIE WEDŁUG PLACY DODATKOWEJ MALEJĄCO (WARTOŚĆ NULL ZOSTAJE NA KOŃCU)
  6. SELECT NAZWISKO, ID_ZESP FROM PRACOWNICY WHERE PLACA_DOD > (PLACA_POD / 10); -- PRZYKLAD WYKORZYSTANIA WHERE
  7. SELECT NAZWISKO, PLACA_POD, ETAT FROM PRACOWNICY WHERE PLACA_POD BETWEEN 208 AND 1070; -- WYSZUKANIE OBIEKTOW KTORYCH PLACA PODSTAWOWA ZNAJDUJE SIE W PRZEDZIALE 208 - 1070
  8. DESCRIBE ZESPOLY;
  9.  
  10. -- ZADANIA Z LABORATORIUM:
  11.  
  12. -- ZAD 1
  13. SELECT * FROM ZESPOLY;
  14.  
  15. -- ZAD 2
  16. SELECT * FROM PRACOWNICY;
  17.  
  18. -- ZAD 3
  19. SELECT NAZWISKO, ( PLACA_POD + NVL(PLACA_DOD, 0) ) * 12 AS ROCZNE_DOCHODY FROM PRACOWNICY;
  20.  
  21. -- ZAD 4
  22. SELECT ETAT, PLACA_POD + NVL(PLACA_DOD, 0) FROM PRACOWNICY;
  23.  
  24. -- ZAD 5
  25. SELECT * FROM ZESPOLY ORDER BY NAZWA ASC;
  26.  
  27. -- ZAD 6
  28. SELECT DISTINCT ETAT FROM PRACOWNICY;
  29.  
  30. -- ZAD 7
  31. SELECT * FROM PRACOWNICY WHERE ETAT = 'ASYSTENT';
  32.  
  33. -- ZAD 8
  34. SELECT ID_PRAC, NAZWISKO, ETAT, PLACA_POD, ID_ZESP FROM PRACOWNICY WHERE ID_ZESP = 30 OR ID_ZESP = 40 ORDER BY ( PLACA_POD + NVL(PLACA_DOD, 0) ) DESC;
  35.  
  36. -- ZAD 9
  37. SELECT NAZWISKO, ID_ZESP, PLACA_POD FROM PRACOWNICY WHERE PLACA_POD BETWEEN 300 AND 800;
  38.  
  39. -- ZAD 10
  40. SELECT NAZWISKO, ETAT, ID_ZESP FROM PRACOWNICY WHERE NAZWISKO LIKE '%SKI';
  41.  
  42. -- ZAD 11
  43. SELECT ID_PRAC, ID_SZEFA, NAZWISKO, PLACA_POD FROM PRACOWNICY WHERE PLACA_POD > 1000 AND ID_SZEFA LIKE '%';
  44.  
  45. -- ZAD 12
  46. SELECT NAZWISKO, ID_ZESP FROM PRACOWNICY WHERE ID_ZESP = 20 AND ( NAZWISKO LIKE 'M%' OR NAZWISKO LIKE '%SKI');
  47.  
  48. -- ZAD 13
  49. SELECT NAZWISKO, ETAT, PLACA_POD / 20 / 8 AS STAWKA FROM PRACOWNICY WHERE ETAT != 'ADIUNKT' AND ETAT != 'STAZYSTA' AND ETAT != 'ASYSTENT' AND PLACA_POD NOT BETWEEN 400 AND 800 ORDER BY PLACA_POD / 20 / 8 ASC;
  50.  
  51. -- ZAD 14
  52. SELECT NAZWISKO, ETAT, PLACA_POD, NVL(PLACA_DOD, '0') FROM PRACOWNICY WHERE PLACA_POD + NVL(PLACA_DOD, 0) > 1000 ORDER BY ETAT ASC, NAZWISKO ASC;
  53.  
  54. -- ZAD 15
  55. SELECT NAZWISKO || ' PRACUJE OD ' || ZATRUDNIONY || ' I ZARABIA ' || PLACA_POD AS PROFESOROWIE FROM PRACOWNICY WHERE ETAT = 'PROFESOR' ORDER BY PLACA_POD DESC;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement