Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- 1. Podaj nazwisko studenta o numerze 5.
- SELECT NAZWISKO FROM STUDENCI WHERE NR_STUD = 5
- -- 2. Podaj nazwy przedmiotów zaczynające sie od litery A.
- SELECT NAZWA_PRZEDM FROM PRZEDMIOTY WHERE NAZWA_PRZEDM LIKE 'A%'
- -- 3. Podaj nazwiska studentów studiujących na kierunku ROBOTYKA.
- SELECT stud.NAZWISKO FROM STUDENCI stud,
- KIERUNKI kier
- WHERE kier.NR_KIER = stud.NR_KIER AND kier.NAZWA_KIER = 'ROBOTYKA'
- -- 4. Podaj w porządku alfabetycznym nazwiska studentek, które z dowolnego przedmiotu otrzymały ocenę=2.
- SELECT NAZWISKO FROM STUDENCI
- WHERE NR_STUD = ANY ( SELECT NR_STUD FROM OCENY WHERE OCENA=2 ) AND PLEC = 'K' ORDER BY NAZWISKO ASC
- -- 5. Podaj wykaz wykładów realizowanych na kierunku BUDOWA MC.
- SELECT przedm.NAZWA_PRZEDM FROM PRZEDMIOTY przedm, KIERUNKI kier, TYPY_PRZEDMIOTOW typ
- WHERE kier.NR_KIER = przedm.NR_KIER
- AND typ.KOD_TPRZEDM = przedm.KOD_TPRZEDM
- AND kier.NAZWA_KIER = 'BUDOWA MC'
- AND typ.NAZWA_TPRZEDM = 'Wyk?ad'
- --6. Podaj w odwrotnej kolejności alfabetycznej nazwiska studentów mężczyzn, którzy studiują na kierunku STEROWANIE PROC lub TECHNOLOGIA EL.
- SELECT NAZWISKO
- FROM studenci s,kierunki k WHERE s.NR_KIER =k.NR_KIER AND s.PLEC
- LIKE 'M' AND (k.NAZWA_KIER LIKE 'STEROWANIE PROC' OR k.NAZWA_KIER LIKE 'TECHNOLOGIA EL')
- ORDER BY NAZWISKO DESC
- --7.Podaj nazwy przedmiotów, z których wystawiono przynajmniej jedną ocenę 2. Nazwa danego przedmiotu powinna się pojawić tylko raz.
- SELECT DISTINCT p.NAZWA_PRZEDM
- FROM oceny o INNER JOIN przedmioty p ON o.NR_PRZEDM = p.NR_PRZEDM
- WHERE o.OCENA = 2;
- --8. Podaj nazwy przedmiotów i nazwy ich przedmiotów nadrzędnych.
- SELECT p1.NAZWA_PRZEDM, p2.NAZWA_PRZEDM AS 'NADRZEDNY'
- FROM przedmioty p1, przedmioty p2
- WHERE p1.NR_PRZEDM_NADRZ = p2.NR_PRZEDM;
- --9. Podaj liczbę studentów kierunku INFORMATYKA.
- SELECT COUNT(NAZWISKO) AS cnt
- FROM studenci s INNER JOIN kierunki m ON s.NR_KIER = m.NR_KIER AND NAZWA_KIER='INFORMATYKA';
- --10. Podaj średnią ocen studenta KOWALSKIEGO.
- SELECT AVG(o.OCENA)
- FROM oceny o INNER JOIN studenci s ON s.NR_STUD = o.NR_STUD
- WHERE NAZWISKO='KOWALSKI';
- --11. Podaj liczbę studentów kierunku RESTRUKTURYZACJI GORNICTWA
- SELECT COUNT( NAZWISKO) AS Liczba
- FROM studenci s, kierunki k
- WHERE k.NAZWA_KIER='RESTRUKTURYZACJI GORNICTWA' AND s.NR_KIER = k.NR_KIER
- --12. Podaj najniższą i najwyższą ocenę uzyskaną przez poszczególnych studentów o nazwiskach zaczynających się na K.
- SELECT s.NR_STUD, NAZWISKO, MIN(o.OCENA) AS MIN, MAX(o.OCENA) AS MAX
- FROM studenci s JOIN oceny o
- ON s.NR_STUD = o.NR_STUD
- WHERE NAZWISKO LIKE 'K%'
- GROUP BY s.NR_STUD, NAZWISKO
- --13. Podaj liczbę różnych nazwisk, które mają studenci kierunku RESTRUKTURYZACJI GORNICTWA
- SELECT COUNT(DISTINCT NAZWISKO) AS Liczba
- FROM studenci s, kierunki k
- WHERE k.NAZWA_KIER='RESTRUKTURYZACJI GORNICTWA' AND k.NR_KIER= s.NR_KIER
- --14. Podaj daty urodzenia najstarszych studentów na poszczególnych kierunkach.
- SELECT KIERUNKI.NR_KIER, NAZWA_KIER, MIN(DATA_UR)
- FROM STUDENCI
- JOIN KIERUNKI ON STUDENCI.NR_KIER = KIERUNKI.NR_KIER
- GROUP BY KIERUNKI.NR_KIER, NAZWA_KIER
- --15. Dla każdego studenta o nazwisku na K podać liczbę ocen, które otrzymał z poszczególnych przedmiotów.
- SELECT NAZWISKO, NAZWA_PRZEDM, COUNT(*) AS Liczba
- FROM studenci
- JOIN kierunki ON studenci.NR_KIER = kierunki.NR_KIER
- JOIN przedmioty ON przedmioty.NR_KIER = kierunki.NR_KIER
- JOIN oceny ON oceny.NR_PRZEDM = przedmioty.NR_PRZEDM AND oceny.NR_STUD = studenci.NR_STUD
- WHERE LEFT(NAZWISKO, 1) = 'K'
- GROUP BY NAZWISKO, NAZWA_PRZEDM,studenci.NR_STUD;
- --16. Podaj nazwy przedmiotów, z których wystawiono więcej niż 8 ocen.
- SELECT p.NAZWA_PRZEDM
- FROM PRZEDMIOTY p
- WHERE (SELECT COUNT(o.OCENA) FROM OCENY o WHERE o.NR_PRZEDM = p.NR_PRZEDM) > 8
- ORDER BY p.NAZWA_PRZEDM ASC
- --17. Dla każdego studenta kierunku ROBOTYKA podaj liczbę przedmiotów z których ma on ocenę.
- SELECT NAZWISKO,
- COUNT (DISTINCT PRZEDMIOTY.NR_PRZEDM) AS ile
- FROM STUDENCI
- JOIN KIERUNKI ON KIERUNKI.NR_KIER = STUDENCI.NR_KIER
- JOIN PRZEDMIOTY JOIN OCENY ON OCENY.NR_STUD = STUDENCI.NR_STUD
- AND OCENY.NR_PRZEDM = PRZEDMIOTY.NR_PRZEDM
- WHERE KIERUNKI.NAZWA_KIER = 'ROBOTYKA'
- GROUP BY STUDENCI.NR_STUD, NAZWISKO
- --18. Podaj nazwiska studentów, którzy są młodsi od studenta DYBA
- SELECT NAZWISKO FROM STUDENCI
- WHERE DATA_UR > ( SELECT DATA_UR FROM STUDENCI WHERE NAZWISKO = 'DYBA') ORDER BY NR_STUD
- --19. Podaj nazwiska studentów, których średnia ocen jest większa od średniej ocen studenta LISA.
- SELECT NAZWISKO
- FROM STUDENCI
- JOIN OCENY ON
- STUDENCI.NR_STUD = OCENY.NR_STUD
- GROUP BY NAZWISKO, STUDENCI.NR_STUD
- HAVING avg(OCENA) > (
- SELECT avg(OCENA)
- FROM STUDENCI
- JOIN OCENY ON STUDENCI.NR_STUD = OCENY.NR_STUD
- WHERE NAZWISKO LIKE 'LIS')
- --20. Podaj nazwy kierunków, na których studiuje więcej studentów niż na kierunku INFORMATYKA.
- SELECT NAZWA_KIER FROM KIERUNKI k JOIN STUDENCI s ON k.NR_KIER=s.NR_KIER
- GROUP BY NAZWA_KIER HAVING COUNT (s.NR_STUD) > ( SELECT COUNT (s.NR_STUD)
- FROM KIERUNKI k JOIN STUDENCI s ON k.NR_KIER=s.NR_KIER
- WHERE NAZWA_KIER='INFORMATYKA')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement