Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --Zad 2
- SELECT nr_rejestr, marka, modell, data_prod, data_urodzenia,
- ROUND(data_urodzenia-data_prod),
- FLOOR(MONTHS_BETWEEN(data_urodzenia, data_prod)/12)
- FROM pojazdy join kierowcy ON (wlasciciel=id_kierowcy)
- WHERE data_urodzenia > data_prod
- ORDER BY 7 DESC;
- --zad 4
- SELECT TRUNC(czas) AS dzien_polowu, nazwisko, imie, g.nazwa, l.nazwa, waga, dlugosc FROM rejestry r
- join WEDKARZE w ON(r.id_wedkarza = w.id_wedkarza)
- join gatunki g ON(r.id_gatunku = g.id_gatunku)
- join lowiska l ON(r.id_lowiska = l.id_lowiska)
- ORDER BY 1;
- --Zad 8
- SELECT id_wedkarza, nazwisko, id_okregu, id_licencji,
- TO_DATE(od_dnia||'-'||rok,'DD-MM-YYYY'),
- TO_DATE(do_dnia||'-'||rok,'DD-MM-YYYY')+1 dni,
- (TO_DATE(od_dnia||'-'||rok,'DD-MM-YYYY')-
- TO_DATE(do_dnia||'-'||rok,'DD-MM-YYYY')+1)*dzienna_oplata koszt,
- dzienna_oplata
- FROM LICENCJE
- join oplaty USING(rok, id_okregu)
- join wedkarze USING(id_wedkarza)
- WHERE NOT(od_dnia LIKE'01-01' AND do_dnia LIKE '31-12') AND rodzaj ='dodatkowa';
- --zad10
- SELECT p1.nr_akt, p1.imiona, p1.nazwisko, p1.przelozony
- FROM pracownicy p1 left join pracownicy p2 ON(p1.przelozony = p2.nr_akt);
- --zad12
- SELECT tryb, kierunek, COUNT(*)
- FROM studenci
- GROUP BY tryb, kierunek
- HAVING COUNT(*) >=100;
- --zad15
- SELECT TO_CHAR(czas, 'YYYY'), TO_CHAR(czas, 'DAY'), COUNT(id_wedarza) AS liczba_polowow,
- COUNT(id_gatunku) AS liczba_udanych
- FROM rejestry
- WHERE MOD(EXTRACT(DAY FROM czas),2) = 0
- GROUP BY TO_CHAR(czas, 'YYYY'), TO_CHAR(czas, 'DAY')
- HAVING COUNT(id_wedkarza) >=10;
- --zad 19
- SELECT st.stanowisko, COUNT(st.stanowisko),
- ROUND(AVG(placa) srednia_pensja,
- MIN(placa) min_pensja,
- MAX() max_pensja
- FROM stanowiska st
- join pracownicy pr ON(st.stanowisko=pr.stanowisko)
- WHERE data_zwol IS NULL OR data_zwol>=SYSDATE
- GROUP BY st.stanowisko
- ORDER BY 2 DESC;
- --zad21
- SELECT id_lowiska, nazwa, COUNT(*), COUNT(id_gatunku), COUNT(DISTINCT id_wedkarza)
- FROM rejestry join lowiska USING(id_lowiska)
- WHERE czas BETWEEN TIMESTAMP '2016-03-11 15:15:00' AND TIMESTAMP '2016-02-11 15:15:00' + INTERVAL '2' YEAR(1) +
- INTERVAL '21 21:21:21' DAY(2) TO SECOND
- GROUP BY id_lowiska, nazwa
- HAVING COUNT(id_gatunku) >=5 AND COUNT(*) - COUNT(id_gatunku) >= 2;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement