Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- '1'
- SELECT nr_zlecenia "Zlecenie AB"
- FROM Donacje NATURAL JOIN Dawcy
- WHERE grupa_krwi='AB';
- '2'
- SELECT W1.pseudo_wampira "PSEUDO WAMPIRA",
- W1.plec_wampira "PLEC WAMPIRA",
- NVL(TO_CHAR(W1.pseudo_szefa), ' ') "PSEUDO SZEFA",
- NVL(TO_CHAR(W2.plec_wampira), ' ') "PLEC SZEFA"
- FROM Wampiry W1 LEFT JOIN Wampiry W2 ON W2.pseudo_wampira=W1.pseudo_szefa;
- '3'
- SELECT D1.pseudo_dawcy "Dawca przed Slodka" , D1.plec_dawcy "Plec"
- FROM Dawcy D1, Dawcy D2
- WHERE D2.pseudo_dawcy='Slodka' AND
- D1.rocznik_dawcy<D2.rocznik_dawcy;
- '4'
- SELECT pseudo_dawcy, 'Ponizej 700' "Pobor"
- FROM Donacje
- GROUP BY pseudo_dawcy
- HAVING SUM(ilosc_krwi)<700
- UNION ALL
- SELECT pseudo_dawcy, 'Miedzy 700 a 1000'
- FROM Donacje
- GROUP BY pseudo_dawcy
- HAVING SUM(ilosc_krwi) BETWEEN 700 AND 1000
- UNION ALL
- SELECT pseudo_dawcy, 'Powyzej 1000'
- FROM Donacje
- GROUP BY pseudo_dawcy
- HAVING SUM(ilosc_krwi)>1000;
- '5'
- SELECT S.pseudo_wampira, "ile sprawnosci" "Liczba"
- FROM (SELECT pseudo_wampira, COUNT(sprawnosc) "ile sprawnosci"
- FROM Sprawnosci_w
- GROUP BY pseudo_wampira) S JOIN
- (SELECT pseudo_wampira, COUNT(jezyk_obcy) "ile jezykow"
- FROM Jezyki_obce_w
- GROUP BY pseudo_wampira) J ON J.pseudo_wampira=S.pseudo_wampira
- WHERE "ile sprawnosci"="ile jezykow"
- ORDER BY S.pseudo_wampira;
- '6'
- SELECT nr_zlecenia, data_zlecenia
- FROM Zlecenia
- WHERE nr_zlecenia IN (SELECT nr_zlecenia
- FROM Donacje
- WHERE pseudo_dawcy IN (SELECT pseudo_dawcy
- FROM Dawcy
- WHERE grupa_krwi='AB'))
- ORDER BY nr_zlecenia;
- '7'
- SELECT W.plec_wampira "Plec", COUNT("ile jezykow") "Liczba lingwistow"
- FROM Wampiry W JOIN (SELECT pseudo_wampira, COUNT(jezyk_obcy) "ile jezykow"
- FROM Jezyki_obce_w
- GROUP BY pseudo_wampira)J ON J.pseudo_wampira=W.pseudo_wampira
- WHERE "ile jezykow">1
- GROUP BY W.plec_wampira;
- '8a'
- SELECT ilosc_krwi "Objetosc", pseudo_dawcy "Dawca"
- FROM Donacje D
- WHERE 3>(SELECT COUNT(DISTINCT D2.ilosc_krwi)
- FROM Donacje D2
- WHERE D.ilosc_krwi<D2.ilosc_krwi)
- ORDER BY ilosc_krwi DESC;
- ;
- '8b'
- SELECT D1.ilosc_krwi "Objetosc", D1.pseudo_dawcy "Dawca"
- FROM Donacje D1, Donacje D2
- WHERE D1.ilosc_krwi<=D2.ilosc_krwi
- GROUP BY D1.pseudo_dawcy, D1.ilosc_krwi
- HAVING COUNT(DISTINCT D2.ilosc_krwi)<=3
- ORDER BY D1.ilosc_krwi DESC;
- SELECT D1.ilosc_krwi "Objetosc", D1.pseudo_dawcy "Dawca"
- FROM Donacje D1 JOIN Donacje D2 ON D1.ilosc_krwi<=D2.ilosc_krwi
- GROUP BY D1.pseudo_dawcy, D1.ilosc_krwi
- HAVING COUNT(DISTINCT D2.ilosc_krwi)<=3
- ORDER BY D1.ilosc_krwi DESC;
- '9 podzapytania'
- SELECT pseudo_dawcy "Dawca", grupa_krwi "Grupa"
- FROM Dawcy
- WHERE pseudo_dawcy IN
- (SELECT pseudo_dawcy
- FROM Donacje
- WHERE nr_zlecenia IN
- (SELECT nr_zlecenia
- FROM Zlecenia
- WHERE pseudo_wampira IN
- (SELECT pseudo_wampira
- FROM Jezyki_obce_w
- WHERE jezyk_obcy='polski')));
- '9 złączenie relacji'
- SELECT D1.pseudo_dawcy "Dawca", D2.grupa_krwi "Grupa", J.pseudo_wampira "Biorca"
- FROM Donacje D1, Dawcy D2, Jezyki_obce_w J, Zlecenia Z
- WHERE D1.pseudo_dawcy=D2.pseudo_dawcy AND
- Z.pseudo_wampira=J.pseudo_wampira AND
- D1.nr_zlecenia=Z.nr_zlecenia AND J.jezyk_obcy='polski'
- ORDER BY D1.pseudo_dawcy;
- '10'
- SELECT pseudo_wampira "Wampir", TO_CHAR(wampir_w_rodzinie,'YYYY') "Rok wstapienia"
- FROM Wampiry
- WHERE TO_CHAR(wampir_w_rodzinie,'YYYY') IN (SELECT TO_CHAR(wampir_w_rodzinie,'YYYY')
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- HAVING COUNT(pseudo_wampira)>1);
- '11'
- SELECT TO_CHAR(wampir_w_rodzinie,'YYYY') "ROK",
- COUNT(pseudo_wampira) "LICZBA WSTAPIEN"
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- HAVING COUNT(pseudo_wampira) = (
- SELECT *
- FROM (SELECT COUNT(pseudo_wampira)
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- HAVING COUNT(pseudo_wampira) <=(SELECT AVG(COUNT(pseudo_wampira))
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY'))
- ORDER BY COUNT(pseudo_wampira) DESC)
- WHERE ROWNUM=1)
- UNION ALL
- SELECT 'Srednia' "ROK",
- AVG(COUNT(pseudo_wampira)) "LICZBA WSTAPIEN"
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- UNION ALL
- SELECT TO_CHAR(wampir_w_rodzinie,'YYYY') "ROK",
- COUNT(pseudo_wampira) "LICZBA WSTAPIEN"
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- HAVING COUNT(pseudo_wampira) = (
- SELECT *
- FROM (SELECT COUNT(pseudo_wampira)
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY')
- HAVING COUNT(pseudo_wampira) >=(SELECT AVG(COUNT(pseudo_wampira))
- FROM Wampiry
- GROUP BY TO_CHAR(wampir_w_rodzinie,'YYYY'))
- ORDER BY COUNT(pseudo_wampira) ASC)
- WHERE ROWNUM=1);
- '12a'
- SELECT pseudo_dawcy "Dawczyni",
- grupa_krwi "Grupa krwi",
- (SELECT SUM(ilosc_krwi)
- FROM Donacje
- WHERE D.pseudo_dawcy=Donacje.pseudo_dawcy
- GROUP BY pseudo_dawcy) "W sumie oddala",
- (SELECT ROUND(AVG(SUM(ilosc_krwi)),0)
- FROM Dawcy NATURAL JOIN Donacje
- WHERE Dawcy.grupa_krwi=D.grupa_krwi AND plec_dawcy='K'
- GROUP BY pseudo_dawcy) "Srednia suma w jej grupie"
- FROM Dawcy D
- WHERE plec_dawcy='K';
- '12b'
- SELECT *
- FROM (SELECT D1.pseudo_dawcy, grupa_krwi,SUM(D2.ilosc_krwi) "W sumie oddala"
- FROM Dawcy D1 JOIN Donacje D2 ON D1.pseudo_dawcy = D2.pseudo_dawcy
- WHERE plec_dawcy='K'
- GROUP BY D1.pseudo_dawcy, grupa_krwi)
- JOIN
- (SELECT ROUND(AVG("Suma indywidualna"), 0) "Srednia suma w jej grupie", grupa_krwi
- FROM (SELECT SUM(D6.ilosc_krwi) "Suma indywidualna", D5.pseudo_dawcy, grupa_krwi
- FROM Dawcy D5 JOIN Donacje D6 ON D5.pseudo_dawcy = D6.pseudo_dawcy
- WHERE plec_dawcy='K'
- GROUP BY D5.pseudo_dawcy, grupa_krwi)
- GROUP BY grupa_krwi)
- USING(grupa_krwi)
- ;
- SELECT D4.pseudo_dawcy, D4.grupa_krwi, D4."W sumie oddala", D8."Srednia suma w jej grupie"
- FROM (SELECT D0.pseudo_dawcy, D0.grupa_krwi, D3."W sumie oddala"
- FROM Dawcy D0 JOIN (SELECT D1.pseudo_dawcy, SUM(D2.ilosc_krwi) "W sumie oddala"
- FROM Dawcy D1 JOIN Donacje D2 ON D1.pseudo_dawcy = D2.pseudo_dawcy
- GROUP BY D1.pseudo_dawcy) D3 ON D0.pseudo_dawcy=D3.pseudo_dawcy
- WHERE plec_dawcy='K') D4
- JOIN
- (SELECT ROUND(AVG("Suma indywidualna"), 0) "Srednia suma w jej grupie", D7.grupa_krwi
- FROM (SELECT SUM(D6.ilosc_krwi) "Suma indywidualna", D5.pseudo_dawcy
- FROM Dawcy D5 JOIN Donacje D6 ON D5.pseudo_dawcy = D6.pseudo_dawcy
- GROUP BY D5.pseudo_dawcy) NATURAL JOIN Dawcy D7
- WHERE D7.plec_dawcy='K'
- GROUP BY D7.grupa_krwi) D8
- ON
- D4.grupa_krwi=D8.grupa_krwi
- ;
- '13'
- SELECT W.pseudo_wampira, D.pseudo_dawcy, SUM(ilosc_krwi)
- FROM Wampiry W JOIN Donacje D ON W.pseudo_wampira = D.pseudo_wampira
- WHERE pseudo_dawcy IN (SELECT D1.pseudo_dawcy
- FROM Dawcy D1 JOIN Donacje D2 ON D1.pseudo_dawcy = D2.pseudo_dawcy
- WHERE plec_dawcy='K'
- HAVING SUM(D2.ilosc_krwi)>800
- GROUP BY D1.pseudo_dawcy)
- AND W.plec_wampira='M'
- AND W.pseudo_wampira NOT IN (SELECT Z.pseudo_wampira
- FROM Zlecenia Z)
- GROUP BY W.pseudo_wampira, D.pseudo_dawcy;
- '14'
- SELECT pseudo_dawcy "Dawca", rocznik_dawcy "Rocznik"
- FROM Dawcy
- WHERE grupa_krwi='0';
- UPDATE Dawcy
- SET rocznik_dawcy=NVL(rocznik_dawcy,0)+5
- WHERE grupa_krwi='0';
- SELECT pseudo_dawcy "Dawca", rocznik_dawcy "Rocznik"
- FROM Dawcy
- WHERE grupa_krwi='0';
- ROLLBACK;
- SELECT pseudo_dawcy "Dawca", rocznik_dawcy "Rocznik"
- FROM Dawcy
- WHERE grupa_krwi='0';
- '15'
- SELECT W.pseudo_wampira "PSEUDO WAMPIRA",
- W.pseudo_szefa "PSEUDO SZEFA",
- W2.pseudo_szefa "PSEUDO SZEFA SZEFA"
- FROM Wampiry W LEFT JOIN Wampiry W2 ON W.pseudo_szefa=W2.pseudo_wampira
- WHERE W.plec_wampira='M';
- '16'
- SELECT W.plec_wampira, SUM(DECODE(W.pseudo_szefa, 'Drakula', D.ilosc_krwi, 0)) "Pod Drakula",
- SUM(DECODE(W.pseudo_szefa, 'Opoj', D.ilosc_krwi, 0)) "Pod Opojem",
- SUM(DECODE(W.pseudo_szefa, 'Wicek', D.ilosc_krwi, 0)) "Pod Wickiem"
- FROM Wampiry W NATURAL JOIN Donacje D
- GROUP BY plec_wampira;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement