/* 1 */
SELECT count(*) FROM studenci;
/* 2 */
SELECT plec, count(*) FROM studenci
GROUP BY plec;
/* 3 */
SELECT count(*) FROM oceny
WHERE ROK_AKADEMICKI='2005/06' AND RODZAJ_SEMESTRU='zimowy';
/* 4 */
SELECT r.NAZWA, count(s.student_id) as studentow
FROM studenci s
JOIN kierunki_studiow k on s.kierunek=k.symbol
JOIN rodzaje_studiow r on k.RODZAJ_STUDIOW=r.SYMBOL
GROUP BY r.NAZWA;
/* 5 */
SELECT o.ocena, count(o.STUDENT_ID) as LICZBA_OCEN
FROM oceny o
WHERE o.RODZAJ_SEMESTRU='zimowy' AND o.ROK_AKADEMICKI='2005/06'
GROUP by o.OCENA
ORDER by o.OCENA ASC;
/* 6 */
NIE DZIAŁA DO KOŃCA
SELECT r.nazwa (CASE WHEN r.nazwa='3' THEN 'brak oceny' END) , count(o.STUDENT_ID) as LICZBA_OCEN
FROM oceny o
JOIN rodzaje_ocen r on o.ocena=r.wartosc
WHERE o.RODZAJ_SEMESTRU='zimowy' AND o.ROK_AKADEMICKI='2005/06'
GROUP by r.NAZWA
ORDER by r.NAZWA ASC;
/* 7 */
SELECT round((sum(o.ocena)/count(o.student_id)),2) as srednia
FROM oceny o
JOIN studenci s on o.STUDENT_ID=s.STUDENT_ID
JOIN kierunki_studiow k on s.KIERUNEK = k.symbol
WHERE k.NAZWA='Ekonomia (stacjonarne)';
/* 8 */
NIE
-->ROLLUP<--
/* 1 */
SELECT plec, count(*) FROM studenci
GROUP BY ROLLUP(plec);
/* 2 */
BRAK
/* 3 */
SELECT o.ROK_AKADEMICKI, o.RODZAJ_SEMESTRU, count(o.STUDENT_ID)
FROM oceny o
GROUP BY ROLLUP (o.ROK_AKADEMICKI,o.RODZAJ_SEMESTRU)
;
/* 4 */
SELECT kat.symbol, r.symbol, k.symbol, count(*) as LICZBA_STUDENTOW
FROM studenci s
JOIN kierunki_studiow k on s.KIERUNEK=k.SYMBOL
JOIN rodzaje_studiow r on k.RODZAJ_STUDIOW=r.SYMBOL
JOIN kategorie_studiow kat on r.KATEGORIA_STUDIOW=kat.SYMBOL
GROUP BY ROLLUP (kat.symbol, r.symbol, k.symbol);
/* 5 */
Zamiana nulli z4
-->CUBE<--
/* 1 */
SELECT r.nazwa, s.plec, count(*)
FROM studenci s
JOIN kierunki_studiow k on s.KIERUNEK=k.SYMBOL
JOIN rodzaje_studiow r on k.RODZAJ_STUDIOW=r.SYMBOL
GROUP BY CUBE(r.nazwa,s.plec)
ORDER BY r.NAZWA
;
/* 2 */
PRZEROBIC 1
/* 3 */
NIE DO KONCA OK
SELECT zalka.NAZWA, zajecia.nazwa, round((sum(o.ocena)/count(o.student_id)),2) as SREDNIA_OCEN
FROM oceny o
JOIN RODZAJE_ZALICZEN zalka on o.RODZAJ_ZALICZENIA=zalka.SYMBOL
JOIN RODZAJE_ZAJEC zajecia on o.RODZAJ_ZAJEC=zajecia.SYMBOL
GROUP BY CUBE (zalka.NAZWA, zajecia.nazwa)
ORDER BY zalka.nazwa
;
--> GROUPING SETS <--
/* 1 */
CHYBA NIE DO KONCA TO
SELECT r.NAZWA,s.PLEC,m.WOJEWODZTWO, count(s.STUDENT_ID)
FROM STUDENCI s
JOIN kierunki_studiow k on s.KIERUNEK=k.SYMBOL
JOIN rodzaje_studiow r on k.RODZAJ_STUDIOW=r.SYMBOL
JOIN miasta m on s.MIASTO_ID=m.MIASTO_ID
GROUP BY GROUPING SETS
(
(r.NAZWA,s.PLEC),
(m.WOJEWODZTWO,s.PLEC)
)
ORDER BY r.nazwa
;
Wyszukiwarka
Podobne podstrony:
Hurtownie danych 2 odp na ćwiczenia03 Projekt fizyczny hurtowni danychHurtownie danych czyli jak zapewnic dostep do wiedzy tkwiacej w danychHurtownie Danych 1 Ćwiczenia całeHurtownia danych serwis samochodowy01 Hurtownie danych07 Metodyka wdrożenia systemu hurtowni danychIstota i struktury hurtowni danych Zasady eksploracji danychbaza danych a hurtownia(1)Shimano Części zamiennewięcej podobnych podstron