Advertisement
Artcik

bazy

Mar 30th, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.25 KB | None | 0 0
  1. --10.2
  2.  
  3. SELECT imie, nazwisko,1.5*pensja AS nowa_pensja
  4. FROM pracownik
  5.  
  6. --10.3
  7.  
  8. SELECT imie, nazwisko, (pensja+COALESCE(dodatek,0))*0.01 AS procent FROM pracownik
  9. ORDER BY procent ASC
  10.  
  11. --11.2
  12.  
  13. SELECT TOP 4 imie, nazwisko FROM pracownik ORDER BY nazwisko ASC
  14.  
  15. --11.3
  16.  
  17. SELECT TOP 1 id_wypozyczenie, id_klient, id_samochod, id_pracow_wyp, id_pracow_odd, id_miejsca_wyp, id_miejsca_odd,
  18. data_wyp, data_odd,kaucja,cena_jedn FROM wypozyczenie ORDER BY id_wypozyczenie DESC
  19.  
  20. --12.2
  21.  
  22. SELECT data_zatr, DATEDIFF(dd,data_zatr,GETDATE()) as Day FROM pracownik ORDER BY Day DESC
  23.  
  24. --12.3
  25.  
  26. SELECT marka,typ,data_prod, DATEDIFF(yy,data_prod,GETDATE()) as Year FROM samochod ORDER BY Year DESC
  27.  
  28. --13.2
  29.  
  30. SELECT UPPER(LEFT(imie,1))+LOWER(SUBSTRING(imie,2,LEN(imie))), UPPER(LEFT(nazwisko,1))+LOWER(SUBSTRING(nazwisko,2,LEN(nazwisko))) FROM pracownik
  31.  
  32. --13.3
  33.  
  34. SELECT imie, nazwisko, STUFF(nr_karty_kredyt,5,LEN(nr_karty_kredyt),'xxxxxx') AS nr_karty FROM klient WHERE nr_karty_kredyt IS NOT NULL
  35.  
  36. --14.2
  37.  
  38. UPDATE klient SET imie='Jerzy',nazwisko='Nowak' WHERE id_klient=10;
  39.  
  40. --14.3
  41.  
  42. UPDATE pracownik SET pensja=pensja+100 WHERE pensja<1500;
  43.  
  44. --15.2
  45.  
  46. DELETE FROM wypozyczenie WHERE id_klient=17
  47.  
  48. --15.3
  49.  
  50. DELETE FROM samochod WHERE przebieg>60000
  51.  
  52. --16.2
  53.  
  54. INSERT INTO samochod (id_samochod,marka,typ,data_prod,kolor,poj_silnika,przebieg) VALUES (50,'Skoda','Octavia',
  55. '2012-09-01','srebrny',1896,5000);
  56.  
  57. --16.3
  58.  
  59. INSERT INTO pracownik(id_pracownik,imie,nazwisko,data_zatr,dzial,stanowisko,pensja,dodatek,id_miejsce,telefon)
  60. VALUES (12,'Alojzy','Mikos','2010-07-11','zaopatrzenie','magazynier',3000,50,1,'501-501-501');
  61.  
  62. --17.2
  63. SELECT k.id_klient,k.imie,k.nazwisko,w.id_samochod,w.data_wyp, w.data_odd
  64. FROM klient k INNER JOIN wypozyczenie w ON k.id_klient=w.id_klient WHERE w.data_odd IS NULL ORDER BY k.nazwisko ASC
  65.  
  66. --17.3
  67.  
  68. SELECT k.id_klient, k.nazwisko, w.data_wyp, w.kaucja FROM klient k INNER JOIN wypozyczenie w
  69. ON k.id_klient=w.id_klient WHERE w.kaucja IS NOT NULL;
  70.  
  71. --18.2
  72.  
  73. SELECT m.ulica, m.numer, s.marka, s.typ FROM miejsce m INNER JOIN wypozyczenie w
  74. ON m.id_miejsce = w.id_miejsca_wyp INNER JOIN samochod s ON s.id_samochod = w.id_samochod ORDER BY
  75. m.ulica,m.numer,s.marka,s.typ ASC
  76.  
  77. --18.3
  78.  
  79. SELECT s.id_samochod, s.marka, s.typ, k.imie, k.nazwisko FROM samochod s INNER JOIN wypozyczenie w ON s.id_samochod = w.id_samochod
  80. INNER JOIN klient k ON w.id_wypozyczenie=k.id_klient ORDER BY s.id_samochod, k.nazwisko, k.imie ASC
  81.  
  82.  
  83. --19.2
  84.  
  85. SELECT AVG(pensja)AS srednia_pensja FROM pracownik
  86.  
  87. --19.3
  88.  
  89. SELECT TOP 1 data_prod FROM samochod ORDER BY data_prod ASC
  90.  
  91. --20.2
  92.  
  93. SELECT s.marka,s.typ, s.id_samochod, COUNT(w.id_wypozyczenie) AS ilosc_wyp FROM samochod s LEFT JOIN
  94. wypozyczenie w ON s.id_samochod=w.id_samochod GROUP BY s.id_samochod, s.marka, s.typ ORDER BY ilosc_wyp ASC
  95.  
  96. --20.3
  97.  
  98. SELECT p.imie, p.nazwisko, COUNT(w.id_wypozyczenie) AS ilosc_wyp FROM pracownik p
  99. LEFT JOIN wypozyczenie w ON p.id_pracownik=w.id_pracow_wyp
  100. GROUP BY p.imie, p.nazwisko
  101. ORDER BY ilosc_wyp DESC
  102.  
  103. --21.2
  104.  
  105. SELECT s.id_samochod, s.marka, COUNT(w.id_wypozyczenie) AS ilosc_wyp FROM samochod s
  106. INNER JOIN wypozyczenie w ON s.id_samochod=w.id_samochod
  107. GROUP BY s.marka, s.typ, s.id_samochod
  108. HAVING COUNT(w.id_wypozyczenie)>= 5
  109. ORDER BY s.marka, s.typ ASC
  110.  
  111. --21.3
  112.  
  113. SELECT p.imie, p.nazwisko, COUNT(w.id_pracow_wyp)AS ilosc_wyp FROM pracownik p LEFT JOIN
  114. wypozyczenie w ON p.id_pracownik=w.id_pracow_wyp
  115. GROUP BY p.imie, p.nazwisko, w.id_pracow_wyp
  116. HAVING COUNT(w.id_pracow_wyp)<=20
  117. ORDER BY ilosc_wyp,p.nazwisko, p.imie ASC
  118.  
  119. --22.2
  120.  
  121. SELECT imie, nazwisko, pensja FROM pracownik WHERE pensja>(SELECT AVG(pensja)FROM pracownik)
  122.  
  123. --22.3
  124.  
  125. SELECT marka, typ, data_prod FROM samochod WHERE data_prod=(SELECT MIN(data_prod) FROM samochod)
  126.  
  127. --23.2
  128.  
  129. SELECT imie, nazwisko FROM klient WHERE id_klient NOT IN (SELECT DISTINCT id_klient FROM wypozyczenie)
  130. ORDER BY nazwisko, imie ASC
  131.  
  132. --23.3
  133.  
  134. SELECT imie, nazwisko FROM pracownik WHERE id_pracownik NOT IN (SELECT DISTINCT id_pracow_wyp FROM wypozyczenie)
  135.  
  136. --24.2
  137.  
  138. SELECT TOP 1 WITH TIES k.id_klient, k.imie, k.nazwisko, COUNT(w.id_wypozyczenie) AS ilosc_wyp
  139. FROM klient k INNER JOIN wypozyczenie w ON k.id_klient=w.id_klient
  140. GROUP BY k.id_klient,k.imie,k.nazwisko
  141. ORDER BY ilosc_wyp ASC
  142.  
  143. --24.3
  144.  
  145. SELECT TOP 1 WITH TIES p.id_pracownik, p.imie, p.nazwisko, COUNT(w.id_wypozyczenie) AS ilosc_wyp
  146. FROM pracownik p INNER JOIN wypozyczenie w ON p.id_pracownik=w.id_pracow_wyp
  147. GROUP BY p.id_pracownik,p.imie,p.nazwisko
  148. ORDER BY ilosc_wyp DESC, p.imie,p.nazwisko DESC
  149.  
  150.  
  151. --25.2
  152. UPDATE pracownik SET dodatek=dodatek+10 WHERE id_pracownik IN (SELECT DISTINCT id_pracow_wyp
  153. FROM wypozyczenie WHERE MONTH(data_wyp)=5)
  154.  
  155. --25.3
  156. UPDATE pracownik SET pensja=pensja-(pensja*0.05) WHERE id_pracownik NOT IN (SELECT DISTINCT id_pracow_wyp
  157. FROM wypozyczenie WHERE YEAR(data_wyp)=1999)
  158.  
  159. --26.2
  160.  
  161. DELETE FROM samochod WHERE id_samochod NOT IN (SELECT DISTINCT id_samochod FROM wypozyczenie)
  162.  
  163. --26.3
  164.  
  165. DELETE FROM pracownik WHERE id_pracownik NOT IN (SELECT DISTINCT id_pracow_wyp FROM wypozyczenie)
  166.  
  167. --27.2
  168.  
  169. SELECT imie, nazwisko FROM klient
  170. INTERSECT
  171. SELECT imie, nazwisko FROM pracownik
  172.  
  173. --27.3
  174.  
  175. SELECT imie, nazwisko FROM klient
  176. EXCEPT
  177. SELECT imie, nazwisko FROM pracownik
  178. ORDER BY nazwisko, imie ASC
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement