Advertisement
Guest User

PBD2

a guest
Jun 14th, 2019
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. SELECT MIASTO || ' ' || KODPOCZTOWY || ' ' || ULICA || ' ' || NRLOKALU "dane adresowe"
  3. -- FROM ADRES;
  4. SELECT OCENA, TO_CHAR(DATA, 'DD/MM/YYYY') czas
  5.  
  6. WHERE DATA > '2017/01/01';
  7.  
  8. WHERE LENGTH(MIASTO) = 8
  9.   AND (ULICA LIKE '_o%' OR ULICA LIKE '_i%');
  10.  
  11. SELECT MAX(OCENA) "MAKSYMALNA OCENA", AVG(OCENA) "ŚREDNIA OCENA", MIN(OCENA) "MINIMALNA OCENA"
  12. FROM OCENA;
  13.  
  14. SELECT REPLACE(NRALBUMU, '909', '000')
  15. FROM STUDENT;
  16.  
  17. SELECT DISTINCT w.*
  18. FROM WYKLADOWCA w,
  19.      OCENA o,
  20.      ZAJECIA z
  21. WHERE w.ID_WYKLADOWCA = z.ID_WYKLADOWCA
  22.   AND o.ID_ZAJECIA = z.ID_ZAJECIA
  23.   AND DATA > ADD_MONTHS(SYSDATE, -5);
  24.  
  25.  
  26. SELECT NEXT_DAY('02-FEB-2001','TUESDAY') "NEXT DAY", *
  27. FROM SALA1;
  28.  
  29. WHERE TYTULNAUKOWY.ID_TYTUL = WYKLADOWCA.ID_TYTUL;
  30.  SELECT ABS(ROUND(SYSDATE - DATA)) czas, nazwisko, nazwa
  31.  
  32. SELECT INITCAP(imie) ||' '|| UPPER(nazwisko) "dane osobowe"
  33. FROM OBSLUGA
  34.  
  35. SELECT INITCAP(NAZWISKO), IMIe
  36. FROM POZWANY, ROZPRAWA
  37. WHERE pozwany.ID_POZ=rozprawa.ID_POZ AND ROZPRAWA.KOSZT > 1000
  38.  
  39. SELECT IMIE, NAZWISKO, KOSZT
  40. FROM OBSLUGA, ROZPRAWA
  41. WHERE OBSLUGA.ID_OBSLUGA=ROZPRAWA.ID_OBSLUGA AND ROZPRAWA.ID_TYP=1
  42. ORDER BY KOSZT DESC;
  43.  
  44. SELECT s.NAZWA, COUNT(r.ID_ROZPRAWA) ile
  45. FROM SALA1 s, ROZPRAWA r, OBSLUGA o, SPECJALNOSC s
  46. WHERE s.ID_SALA = r.ID_SALA AND
  47.     o.ID_OBSLUGA = r.ID_OBSLUGA AND
  48.     s.ID_SPEC = o.ID_SPEC AND
  49.     s.ID_SPEC = 1
  50. GROUP BY s.NAZWA;
  51.  
  52.  
  53. SELECT SALA1.NAZWA, COUNT(ID_ROZPRAWA) ile
  54. FROM ROZPRAWA,
  55.      OBSLUGA,
  56.      SALA1,
  57.      SPECJALNOSC
  58. WHERE SALA1.ID_SALA = ROZPRAWA.ID_SALA
  59.   AND OBSLUGA.ID_SPEC = SPECJALNOSC.ID_SPEC
  60.   AND OBSLUGA.ID_OBSLUGA = ROZPRAWA.ID_OBSLUGA
  61.   AND SPECJALNOSC.NAZWA = 'ADWOKAT'
  62. GROUP BY SALA1.NAZWA
  63. ORDER BY ile DESC FETCH FIRST ROW only;
  64.  
  65. SELECT s.NAZWA, o.NAZWISKO, t.NAZWA
  66. FROM obsluga o, ROZPRAWA r, SALA1 s, TYP_SPRAWY t
  67. WHERE r.ID_OBSLUGA=o.ID_OBSLUGA AND r.ID_SALA=s.ID_SALA AND r.ID_TYP=t.ID_TYP
  68. AND r.DATA IN (SELECT MIN(DATA) FROM ROZPRAWA)
  69.  
  70. SELECT POZWANY.MIASTO, COUNT(ID_ROZPRAWA) ile
  71. FROM ROZPRAWA, POZWANY
  72. WHERE ROZPRAWA.ID_POZ=POZWANY.ID_POZ
  73. GROUP BY POZWANY.MIASTO
  74. ORDER BY ile
  75. FETCH FIRST ROW only;
  76.  
  77. SELECT SPECJALNOSC.NAZWA, COUNT(OBSLUGA.ID_SPEC)
  78. FROM SPECJALNOSC, OBSLUGA
  79. WHERE OBSLUGA.ID_SPEC=SPECJALNOSC.ID_SPEC
  80. GROUP BY SPECJALNOSC.NAZWA
  81. ORDER BY COUNT(OBSLUGA.ID_SPEC);
  82.  
  83. SELECT imie, SPECJALNOSC.NAZWA
  84. FROM OBSLUGA, ROZPRAWA, SPECJALNOSC
  85. WHERE OBSLUGA.ID_OBSLUGA=ROZPRAWA.ID_OBSLUGA AND OBSLUGA.ID_SPEC=SPECJALNOSC.ID_SPEC AND ROZPRAWA.DATA > TO_DATE('2019-01-01', 'YYYY-MM-DD');
  86.  
  87. SELECT NAZWISKO, SALA1.NAZWA
  88. FROM sala1, ROZPRAWA, POZWANY
  89. WHERE SALA1.ID_SALA=ROZPRAWA.ID_SALA AND ROZPRAWA.ID_POZ=POZWANY.ID_POZ AND KOSZT BETWEEN 1000 AND 2000;
  90.  
  91. SELECT NAZWA, DATA_UR
  92. FROM ROZPRAWA, POZWANY, SALA1
  93. WHERE SALA1.ID_SALA=ROZPRAWA.ID_SALA AND ROZPRAWA.ID_POZ=POZWANY.ID_POZ
  94.  
  95. FETCH FIRST ROW only
  96.  
  97. SELECT *
  98. FROM ROZPRAWA
  99. WHERE KOSZT > (SELECT AVG(KOSZT) FROM ROZPRAWA)
  100.  
  101. SELECT *
  102. FROM ROZPRAWA
  103. WHERE DATA > DATE '2018-01-01'
  104.  
  105. SELECT imie ||' '|| NAZWISKO "DANE POZWANEGO", COUNT(ID_ROZPRAWA) ile
  106. FROM POZWANY, ROZPRAWA
  107. WHERE ROZPRAWA.ID_POZ=POZWANY.ID_POZ
  108. GROUP BY imie ||' '|| NAZWISKO
  109. ORDER BY ile DESC
  110. FETCH FIRST ROW only;
  111.  
  112. SELECT OBSLUGA.NAZWISKO, SPECJALNOSC.NAZWA, COUNT(ROZPRAWA.ID_ROZPRAWA) ile
  113. FROM ROZPRAWA, OBSLUGA, SPECJALNOSC
  114. WHERE ROZPRAWA.ID_OBSLUGA=OBSLUGA.ID_OBSLUGA AND SPECJALNOSC.ID_SPEC=OBSLUGA.ID_SPEC
  115. GROUP BY OBSLUGA.NAZWISKO, SPECJALNOSC.NAZWA
  116. ORDER BY ile ASC;
  117.  
  118. SELECT SALA1.NAZWA
  119. FROM SALA1, ROZPRAWA, TYP_SPRAWY
  120. WHERE SALA1.ID_SALA=ROZPRAWA.ID_SALA AND TYP_SPRAWY.ID_TYP=ROZPRAWA.ID_TYP AND TYP_SPRAWY.ID_TYP = 1
  121. ORDER BY KOSZT DESC
  122. FETCH FIRST ROW only;
  123.  
  124. SELECT DISTINCT TYP_SPRAWY.NAZWA
  125. FROM ROZPRAWA, TYP_SPRAWY
  126. WHERE ROZPRAWA.ID_TYP=TYP_SPRAWY.ID_TYP AND ROZPRAWA.DATA > ADD_MONTHS(SYSDATE, -6);
  127.  
  128. SELECT  NAZWISKO, SALA1.NAZWA, TYP_SPRAWY.NAZWA
  129. FROM SALA1, POZWANY, ROZPRAWA, TYP_SPRAWY
  130. WHERE SALA1.ID_SALA=ROZPRAWA.ID_SALA AND ROZPRAWA.ID_POZ=POZWANY.ID_POZ AND ROZPRAWA.ID_TYP=TYP_SPRAWY.ID_TYP
  131. AND POZWANY.DATA_UR = (SELECT MIN(DATA_UR) FROM POZWANY);
  132.  
  133. SELECT MIASTO, COUNT(ID_ROZPRAWA)
  134. FROM POZWANY, ROZPRAWA
  135. WHERE POZWANY.ID_POZ=ROZPRAWA.ID_POZ
  136. GROUP BY MIASTO
  137. ORDER BY COUNT(ID_ROZPRAWA) DESC;
  138.  
  139.  
  140. SELECT NAZWISKO, COUNT(ID_ROZPRAWA) ile
  141. FROM OBSLUGA, ROZPRAWA
  142. WHERE ROZPRAWA.ID_OBSLUGA=OBSLUGA.ID_OBSLUGA AND
  143. GROUP BY NAZWISKO;
  144.  
  145. SELECT MIN(mycount)
  146. FROM (SELECT agent_code,COUNT(agent_code) mycount
  147. FROM orders
  148. GROUP BY agent_code);
  149.  
  150. SELECT MIN(mycount)
  151. FROM (SELECT NAZWISKO, COUNT(ID_ROZPRAWA)
  152.         FROM OBSLUGA, ROZPRAWA
  153.         WHERE ROZPRAWA.ID_OBSLUGA=OBSLUGA.ID_OBSLUGA AND
  154.         GROUP BY NAZWISKO) mycount
  155.  
  156.  
  157.  
  158. SELECT NAZWA, COUNT(ID_ROZPRAWA)
  159. FROM SALA1, ROZPRAWA, POZWANY
  160. WHERE SALA1.ID_SALA=ROZPRAWA.ID_SALA AND ROZPRAWA.ID_POZ=POZWANY.ID_POZ AND POZWANY.MIASTO='WARSZAWA'
  161. GROUP BY NAZWA
  162. ORDER BY COUNT(ID_ROZPRAWA) DESC
  163. FETCH FIRST ROW only;
  164.  
  165. SELECT * FROM POZWANY;
  166.  
  167. SELECT SUM(KOSZT)
  168. FROM ROZPRAWA, OBSLUGA, SPECJALNOSC
  169. WHERE ROZPRAWA.ID_OBSLUGA=OBSLUGA.ID_OBSLUGA AND OBSLUGA.ID_SPEC=SPECJALNOSC.ID_SPEC AND SPECJALNOSC.NAZWA='ADWOKAT';
  170.  
  171. SELECT ROZPRAWA.*, SPECJALNOSC.NAZWA
  172. FROM ROZPRAWA, SPECJALNOSC, OBSLUGA
  173. WHERE ROZPRAWA.ID_OBSLUGA=OBSLUGA.ID_OBSLUGA AND SPECJALNOSC.ID_SPEC=OBSLUGA.ID_SPEC AND ROZPRAWA.DATA = (SELECT MIN(data) FROM ROZPRAWA);
  174.  
  175. SELECT * FROM ROZPRAWA;
  176. SELECT * FROM TYP_SPRAWY;
  177.  
  178. SELECT CHARAKTER.NAZWA, SALA.KODSALI, WYKLADOWCA.NAZWISKO, ZAJECIA.DZIENTYG
  179. FROM CHARAKTER,
  180.      SALA,
  181.      WYKLADOWCA,
  182.      ZAJECIA
  183. WHERE CHARAKTER.ID_CHARAKTER = ZAJECIA.ID_CHARAKTER
  184.   AND SALA.ID_SALA = ZAJECIA.ID_SALA
  185.   AND WYKLADOWCA.ID_WYKLADOWCA = ZAJECIA.ID_WYKLADOWCA
  186.   AND WYKLADOWCA.ID_WYKLADOWCA IN (SELECT ZAJECIA.ID_WYKLADOWCA
  187.                                    FROM WYKLADOWCA,
  188.                                         ZAJECIA
  189.                                    WHERE ZAJECIA.ID_WYKLADOWCA = WYKLADOWCA.ID_WYKLADOWCA
  190.                                      AND ZAJECIA.DZIENTYG LIKE 'WTO');
  191.  
  192. SELECT DISTINCT GRUPA.NAZWA, WYKLADOWCA.NAZWISKO
  193. FROM grupa,
  194.      zajecia,
  195.      WYKLADOWCA
  196. WHERE GRUPA.ID_GRUPA = ZAJECIA.ID_GRUPA
  197.   AND ZAJECIA.ID_WYKLADOWCA = WYKLADOWCA.ID_WYKLADOWCA
  198.   AND WYKLADOWCA.ID_WYKLADOWCA IN (SELECT WYKLADOWCA.ID_WYKLADOWCA
  199.                                    FROM WYKLADOWCA,
  200.                                         TYTULNAUKOWY
  201.                                    WHERE WYKLADOWCA.ID_TYTUL = TYTULNAUKOWY.ID_TYTUL
  202.                                      AND TYTULNAUKOWY.NAZWA LIKE '%Prof. dr hab. in?.%');
  203.  
  204. SELECT IMIE, NAZWISKO, NAZWA
  205. FROM WYKLADOWCA,
  206.      TYTULNAUKOWY,
  207.      ZAJECIA
  208. WHERE WYKLADOWCA.ID_TYTUL = TYTULNAUKOWY.ID_TYTUL
  209.   AND ZAJECIA.ID_WYKLADOWCA = WYKLADOWCA.ID_WYKLADOWCA
  210. HAVING COUNT(ID_ZAJECIA) = (SELECT MAX(COUNT(ID_ZAJECIA))
  211.                             FROM ZAJECIA,
  212.                                  WYKLADOWCA
  213.                             WHERE ZAJECIA.ID_WYKLADOWCA = WYKLADOWCA.ID_WYKLADOWCA);
  214.  
  215. ALTER TABLE BUDYNEK
  216.     ADD poj_sali VARCHAR2(4);
  217.  
  218. ALTER TABLE PRZEDMIOT
  219.     MODIFY ects NUMBER(2);
  220.  
  221. ALTER TABLE BUDYNEK
  222.     MODIFY poj_sali VARCHAR2(2);
  223.  
  224. ALTER TABLE STYPENDIUM
  225.     ADD CONSTRAINT kwotaMAXMIN CHECK ( KWOTA > 50 AND KWOTA < 5000 );
  226.  
  227. ALTER TABLE PRZEDMIOT
  228.     MODIFY ects NOT NULL;
  229.  
  230. ALTER TABLE OCENA
  231.     ADD CONSTRAINT blabla CHECK ( ocena > 0.0);
  232.  
  233. ALTER TABLE OCENA
  234.     MODIFY ocena NUMBER(4, 1) CHECK ( ocena < 6.0 );
  235.  
  236. ALTER TABLE ADRES
  237.     DROP COLUMN KODPOCZTOWY;
  238.  
  239. COMMENT ON TABLE STYPENDIUM IS 'to jest stypendium';
  240.  
  241. SELECT *
  242. FROM USER_TAB_COMMENTS
  243. WHERE COMMENTS IS NOT NULL;
  244. WHERE table_name LIKE 'blabla'
  245.  
  246. SELECT *
  247. FROM USER_COL_COMMENTS;
  248.  
  249. COMMENT ON COLUMN STYPENDIUM.KWOTA IS 'To jest kwota';
  250.  
  251. SELECT *
  252. FROM USER_CONSTRAINTS;
  253.  
  254. UPDATE PRZEDMIOT
  255. SET ECTS = ECTS + 1
  256. WHERE ID_PRZEDMIOT IN (SELECT DISTINCT PRZEDMIOT.ID_PRZEDMIOT
  257.                        FROM WYKLADOWCA,
  258.                             ZAJECIA,
  259.                             grupa,
  260.                             KIERUNEK
  261.                        WHERE WYKLADOWCA.ID_WYKLADOWCA = ZAJECIA.ID_WYKLADOWCA
  262.                          AND ZAJECIA.ID_GRUPA = GRUPA.ID_GRUPA
  263.                          AND grupa.ID_KIERUNEK = KIERUNEK.ID_KIERUNEK
  264.                          AND KIERUNEK.NAZWA LIKE 'Matematyka'
  265. );
  266.  
  267.  
  268. SELECT ROUND(AVG(ocena.OCENA), 2)
  269. FROM OCENA
  270. GROUP BY ID_STUDENT;
  271.  
  272. SELECT ID_STUDENT, ROUND(AVG(ocena.OCENA), 2)
  273. FROM OCENA
  274. WHERE
  275.  
  276. FROM STYPENDIUM, STUDENT, OCENA
  277. WHERE STYPENDIUM.ID_STUDENT=STUDENT.ID_STUDENT AND STUDENT.ID_STUDENT=OCENA.ID_STUDENT
  278.     AND
  279.  
  280. SELECT STUDENT.ID_STUDENT
  281. FROM STUDENT,
  282.      ZAJECIA,
  283.      GRUPA
  284. WHERE STUDENT.ID_GRUPA = GRUPA.ID_GRUPA
  285.   AND GRUPA.ID_GRUPA = ZAJECIA.ID_GRUPA
  286. GROUP BY ID_STUDENT;
  287.  
  288.  
  289. UPDATE PRZEDMIOT
  290. SET ects = ects + 1
  291. WHERE id_przedmiot IN (SELECT DISTINCT przedmiot.ID_PRZEDMIOT
  292.                        FROM PRZEDMIOT,
  293.                             ZAJECIA,
  294.                             STUDENT,
  295.                             GRUPA
  296.                        WHERE PRZEDMIOT.ID_PRZEDMIOT = ZAJECIA.ID_PRZEDMIOT
  297.                          AND ZAJECIA.ID_GRUPA = GRUPA.ID_GRUPA
  298.                          AND STUDENT.ID_GRUPA = GRUPA.ID_GRUPA
  299.                          AND STUDENT.NRALBUMU = (SELECT MIN(NRALBUMU) FROM STUDENT));
  300.  
  301. SELECT *
  302. FROM PRZEDMIOT
  303. ORDER BY ECTS;
  304.  
  305. UPDATE STYPENDIUM
  306. SET KWOTA = kwota + 100
  307. WHERE STYPENDIUM.ID_STUDENT IN (SELECT ID_STUDENT
  308.                                 FROM STUDENT,
  309.                                      BUDYNEK,
  310.                                      GRUPA,
  311.                                      ZAJECIA,
  312.                                      SALA
  313.                                 WHERE STUDENT.ID_GRUPA = GRUPA.ID_GRUPA
  314.                                   AND GRUPA.ID_GRUPA = ZAJECIA.ID_GRUPA
  315.                                   AND ZAJECIA.ID_SALA = sala.ID_SALA
  316.                                   AND sala.ID_BUDYNEK = BUDYNEK.ID_BUDYNEK
  317.                                   AND BUDYNEK.ID_BUDYNEK IN (SELECT BUDYNEK.ID_BUDYNEK, COUNT(ID_ZAJECIA)
  318.                                                              FROM BUDYNEK,
  319.                                                                   SALA,
  320.                                                                   ZAJECIA
  321.                                                              WHERE BUDYNEK.ID_BUDYNEK = SALA.ID_BUDYNEK
  322.                                                                AND ZAJECIA.ID_SALA = SALA.ID_SALA
  323.                                                              GROUP BY BUDYNEK.ID_BUDYNEK
  324.                                                              ORDER BY COUNT(ID_ZAJECIA) DESC
  325.                                                                  FETCH FIRST ROW only
  326.                                 ));
  327.  
  328. UPDATE STYPENDIUM
  329. SET KWOTA = kwota - 100
  330. WHERE STYPENDIUM.ID_STUDENT IN (SELECT ID_STUDENT
  331.                                 FROM STUDENT,
  332.                                      BUDYNEK,
  333.                                      GRUPA,
  334.                                      ZAJECIA,
  335.                                      SALA
  336.                                 WHERE STUDENT.ID_GRUPA = GRUPA.ID_GRUPA
  337.                                   AND GRUPA.ID_GRUPA = ZAJECIA.ID_GRUPA
  338.                                   AND ZAJECIA.ID_SALA = sala.ID_SALA
  339.                                   AND sala.ID_BUDYNEK = BUDYNEK.ID_BUDYNEK
  340.                                   AND BUDYNEK.ID_BUDYNEK IN (SELECT BUDYNEK.ID_BUDYNEK
  341.                                                              FROM BUDYNEK,
  342.                                                                   SALA,
  343.                                                                   ZAJECIA,
  344.                                                                   PRZEDMIOT
  345.                                                              WHERE BUDYNEK.ID_BUDYNEK = SALA.ID_BUDYNEK
  346.                                                                AND ZAJECIA.ID_SALA = SALA.ID_SALA
  347.                                                                AND PRZEDMIOT.ID_PRZEDMIOT = ZAJECIA.ID_PRZEDMIOT
  348.                                                                AND PRZEDMIOT.ECTS = (SELECT MIN(ECTS) FROM PRZEDMIOT)
  349.                                 ));
  350.  
  351. SELECT STUDENT.imie, STUDENT.NAZWISKO, COUNT(ID_ZAJECIA)
  352. FROM student,
  353.      ZAJECIA,
  354.      GRUPA
  355. WHERE STUDENT.ID_GRUPA = GRUPA.ID_GRUPA
  356.   AND ZAJECIA.ID_GRUPA = GRUPA.ID_GRUPA
  357. GROUP BY STUDENT.imie, STUDENT.NAZWISKO
  358. HAVING COUNT(ID_ZAJECIA) > 10;
  359.  
  360.  
  361. UPDATE stypendium
  362. SET kwota = kwota - 100
  363. WHERE id_student1 IN (SELECT s.id_student
  364.                       FROM student s,
  365.                            grupa g,
  366.                            zajecia z
  367.                       WHERE s.id_grupa = g.id_grupa
  368.                         AND z.id_grupa = g.id_grupa
  369.                         AND z.id_zajecia IN (SELECT z.id_zajecia
  370.                                              FROM budynek b,
  371.                                                   sala s,
  372.                                                   zajecia z,
  373.                                                   grupa g,
  374.                                                   charakter ch,
  375.                                                   przedmiot p
  376.                                              WHERE s.id_budynek = b.id_budynek
  377.                                                AND s.id_sala = z.id_sala
  378.                                                AND ch.id_charakter = z.id_charakter
  379.                                                AND g.id_grupa = z.id_grupa
  380.                                                AND p.id_przedmiot = z.id_przedmiot
  381.                                                AND ch.nazwa = 'Wyk3ady'
  382.                                                AND p.ects = (SELECT MAX(ects) FROM przedmiot)));
  383.  
  384. SELECT DISTINCT imie, nazwisko, COUNT(ID_ROZPRAWA)
  385. FROM rozprawa,
  386.      pozwany
  387. GROUP BY imie, nazwisko
  388. HAVING COUNT(ID_ROZPRAWA) > (SELECT COUNT(ID_ROZPRAWA)
  389.                              FROM ROZPRAWA,
  390.                                   OBSLUGA
  391.                              WHERE OBSLUGA.NAZWISKO LIKE 'Nowak'
  392.                                AND ROZPRAWA.DATA > DATE '2015-01-01'
  393.                                AND ROZPRAWA.DATA < DATE '2015-12-31');
  394.  
  395. SELECT NAZWISKO, IMIE, sala1.NAZWA, ROZPRAWA.DATA
  396. FROM POZWANY,
  397.      SALA1,
  398.      ROZPRAWA
  399. WHERE POZWANY.ID_POZ = ROZPRAWA.ID_POZ
  400.   AND SALA1.ID_SALA = ROZPRAWA.ID_SALA
  401.   AND ROZPRAWA.DATA < ANY (SELECT ROZPRAWA.DATA
  402.                            FROM ROZPRAWA,
  403.                                 OBSLUGA
  404.                            WHERE OBSLUGA.ID_OBSLUGA = ROZPRAWA.ID_OBSLUGA
  405.                              AND OBSLUGA.ID_SPEC = 1);
  406.  
  407. SELECT imie, NAZWISKO, TYP_SPRAWY.NAZWA
  408. FROM POZWANY,
  409.      ROZPRAWA,
  410.      TYP_SPRAWY
  411. WHERE POZWANY.ID_POZ = ROZPRAWA.ID_POZ
  412.   AND ROZPRAWA.ID_TYP = TYP_SPRAWY.ID_TYP
  413.   AND ROZPRAWA.DATA > (SELECT MIN(data)
  414.                        FROM ROZPRAWA,
  415.                             POZWANY
  416.                        WHERE ROZPRAWA.ID_POZ = POZWANY.ID_POZ
  417.                          AND POZWANY.IMIE = 'Jan'
  418.                          AND POZWANY.NAZWISKO = 'Kowalski')
  419.   AND ROZPRAWA.DATA < (SELECT MAX(data)
  420.                        FROM ROZPRAWA,
  421.                             POZWANY
  422.                        WHERE ROZPRAWA.ID_POZ = POZWANY.ID_POZ
  423.                          AND POZWANY.IMIE = 'Jan'
  424.                          AND POZWANY.NAZWISKO = 'Kowalski');
  425.  
  426. SELECT imie, NAZWISKO, AVG(ROZPRAWA.KOSZT)
  427. FROM POZWANY,
  428.      ROZPRAWA
  429. WHERE POZWANY.ID_POZ = ROZPRAWA.ID_POZ
  430.   AND ROZPRAWA.KOSZT > (SELECT AVG(KOSZT)
  431.                         FROM ROZPRAWA,
  432.                              TYP_SPRAWY
  433.                         WHERE ROZPRAWA.ID_TYP = TYP_SPRAWY.ID_TYP
  434.                           AND TYP_SPRAWY.ID_TYP = 1)
  435. GROUP BY imie, NAZWISKO;
  436. ??
  437.  
  438.  
  439. ALTER TABLE OBSLUGA
  440.     ADD PESEL NUMBER(11) NOT NULL;
  441.  
  442. ALTER TABLE OBSLUGA
  443.     DROP COLUMN data_ur;
  444.  
  445. ALTER TABLE OBSLUGA
  446.     MODIFY imie VARCHAR2(15);
  447.  
  448. ALTER TABLE ROZPRAWA
  449.     MODIFY koszt NUMBER(6, 2) CHECK ( KOSZT > 0 AND KOSZT < 1000 );
  450.  
  451. ALTER TABLE ROZPRAWA
  452.     ADD CONSTRAINT KwotaMax CHECK ( KOSZT > 0 AND KOSZT < 1000 );
  453.  
  454. UPDATE ROZPRAWA
  455. SET koszt = koszt * 0.95
  456. WHERE ROZPRAWA.KOSZT > (SELECT AVG(ROZPRAWA.KOSZT)
  457.                         FROM ROZPRAWA
  458.                         WHERE ROZPRAWA.DATA > DATE '2018-01-01'
  459.                           AND ROZPRAWA.DATA < DATE '2018-12-31');
  460.  
  461. UPDATE ROZPRAWA
  462. SET koszt = koszt - 50
  463. WHERE ROZPRAWA.ID_ROZPRAWA IN (SELECT ID_ROZPRAWA
  464.                                FROM ROZPRAWA,
  465.                                     TYP_SPRAWY
  466.                                WHERE ROZPRAWA.ID_TYP = TYP_SPRAWY.ID_TYP
  467.                                  AND TYP_SPRAWY.ID_TYP IN (SELECT TYP_SPRAWY.ID_TYP
  468.                                                            FROM TYP_SPRAWY,
  469.                                                                 ROZPRAWA
  470.                                                            WHERE TYP_SPRAWY.ID_TYP = ROZPRAWA.ID_TYP
  471.                                                            HAVING COUNT(ID_ROZPRAWA) =
  472.                                                                   (SELECT MAX(COUNT(ID_ROZPRAWA))
  473.                                                                    FROM ROZPRAWA,
  474.                                                                         TYP_SPRAWY
  475.                                                                    WHERE ROZPRAWA.ID_TYP = TYP_SPRAWY.ID_TYP
  476.                                                                    GROUP BY TYP_SPRAWY.ID_TYP)));
  477.  
  478.  
  479.  
  480. UPDATE OBSLUGA
  481. SET ID_SPEC = 'SUPER PRACOWNIK'
  482. WHERE OBSLUGA.ID_OBSLUGA IN (SELECT OBSLUGA.ID_OBSLUGA
  483.                              FROM OBSLUGA
  484.                                      ,
  485.                                   ROZPRAWA
  486.                              GROUP BY OBSLUGA.ID_OBSLUGA
  487.                              HAVING COUNT(ID_ROZPRAWA)
  488.                                         > (SELECT COUNT(ID_ROZPRAWA)
  489.                                            FROM ROZPRAWA
  490.                                            WHERE ROZPRAWA.DATA
  491.                                                > DATE '2018-01-01'
  492.                                              AND ROZPRAWA.DATA
  493.                                                < DATE '2018-12-31'));
  494.  
  495.  
  496. UPDATE POZWANY
  497. SET IMIE     = 'A',
  498.     NAZWISKO = 'B'
  499. WHERE POZWANY.ID_POZ IN (SELECT ID_POZ
  500.                          FROM POZWANY,
  501.                               ROZPRAWA
  502.                          WHERE POZWANY.ID_POZ = ROZPRAWA.ID_POZ
  503.                          GROUP BY ID_POZ
  504.                          HAVING AVG(ROZPRAWA.KOSZT) > (SELECT AVG(KOSZT)
  505.                                                        FROM ROZPRAWA,
  506.                                                             TYP_SPRAWY
  507.                                                        WHERE ROZPRAWA.ID_TYP = TYP_SPRAWY.ID_TYP
  508.                                                          AND TYP_SPRAWY.ID_TYP = 1));
  509.  
  510.  
  511. -----jakies stare rzeczy z sqldevelopera
  512. --SELECT s.imie, s.nazwisko
  513. --FROM grupa g, student s
  514. --WHERE s.id_grupa=g.id_grupa and s.id_grupa in (select k.nazwa, count(s.id_student) ile
  515. --FROM kierunek k, grupa g, student s
  516. --WHERE k.id_kierunek=g.id_kierunek and s.id_grupa=g.id_grupa
  517. --group by k.nazwa
  518. --order by ile desc
  519. --fetch first row only)
  520.  
  521.  
  522. --select k.nazwa, count(s.id_student) ile
  523. --FROM kierunek k, grupa g, student s
  524. --WHERE k.id_kierunek=g.id_kierunek and s.id_grupa=g.id_grupa
  525. --group by k.nazwa
  526. --order by ile
  527.  
  528.  
  529. --SELECT STUDENT.*
  530. --FROM STUDENT, GRUPA, KIERUNEK
  531. --WHERE GRUPA.ID_GRUPA=STUDENT.ID_GRUPA AND GRUPA.ID_KIERUNEK=KIERUNEK.ID_KIERUNEK  
  532. --AND KIERUNEK.ID_KIERUNEK IN (SELECT ID_KIERUNEK FROM STUDENT, GRUPA WHERE STUDENT.ID_GRUPA=GRUPA.ID_GRUPA  FETCH FIRST ROW ONLY)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement