ErAn156

sql_oopdb_sze_2020.09.21

Sep 21st, 2020
1,049
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*Tatai hallgatok*/
  2. SELECT *
  3. FROM hallgatok
  4. WHERE telepules='Tata'
  5.  
  6. /*2007 januári 10. vizsgák eredményei*/
  7. SELECT *
  8. FROM jegyek
  9. WHERE vdatum='2007-01-10'
  10.  
  11. /*Hány hallgató van felvíve a rendszerbe*/
  12. SELECT COUNT(*) AS 'Hallgatok Száma'
  13. FROM hallgatok
  14.  
  15. /*lista tantárgyi követelmény tipusunként megjeleníti a tantárgyak számát*/
  16. SELECT tkov, COUNT(tkov) AS 'Tantárgyak száma'
  17. FROM tantargyak
  18. GROUP BY tkov
  19.  
  20. /*lista Zsuzsa keresztnevu hallgatok*/
  21. SELECT *
  22. FROM hallgatok
  23. WHERE nev LIKE '%Zsuzsa%'
  24.  
  25. /*Hány uto vizsga van rögzitve a rendszerbe*/
  26. SELECT COUNT(uv) AS 'uv'
  27. FROM jegyek
  28. WHERE uv <> 0
  29.  
  30. /*készítsünk statisztikát ami az egyes képzési formában részt vevő hallgatok számát mutatja*/
  31. SELECT CASE kforma
  32.     WHEN 1 THEN 'bsc'
  33.     WHEN 2 THEN 'msc'
  34.     WHEN 3 THEN 'phd'
  35.     ELSE 'Hiba' END AS 'képzési forma',
  36.     COUNT(*) AS 'hallgatok száma'
  37.     FROM hallgatok
  38.     GROUP BY kforma
  39.  
  40.     /*nevét neptunkodját és a jegyeinek egyszerű szűmtani átlagát csökkenő sorrendben*/
  41.     SELECT nev, j.neptun, AVG(CAST(jegy AS FLOAT)) AS 'átlag'
  42.     FROM jegyek j INNER JOIN hallgatok h ON j.neptun=h.neptun
  43.     GROUP BY nev, j.neptun
  44.     ORDER BY átlag DESC
  45.  
  46.     /*nevét, azonositó, jegyeinek kredittel kalkulált egyszerű számtani átlagát csökkenő sorrendben,
  47.     minden tárgyból csak a végső jegyet vegyük figyelembe*/
  48.     SELECT nev, j.neptun, SUM(CAST(jegy AS FLOAT)*kredit)/SUM(kredit) AS atlag
  49.     FROM jegyek j, hallgatok h, tantargyak t
  50.     WHERE j.neptun=h.neptun AND t.tkod=j.tkod AND
  51.     uv=(SELECT MAX(uv) FROM jegyek j2
  52.     WHERE j2.neptun=j.neptun AND j2.tkod=j.tkod)
  53.     GROUP BY j.neptun, nev
  54.     ORDER BY 3 DESC
  55.  
  56.     /*azok hallgatok nevei akik még egy tárgyból sem szereztek jegyet*/
  57.     SELECT *
  58.     FROM hallgatok
  59.     WHERE neptun NOT IN (SELECT neptun FROM jegyek)
  60.  
  61.     /**/
  62.     SELECT nev AS 'Név' , irsz+' '+telepules+' '+utca AS 'Lakcím'
  63.     FROM hallgatok
  64.  
  65.     /*legtöbb testvérrel rendelkező hallgatok névsora*/
  66.     SELECT nev AS 'hallgató neve', tszam AS 'testvérek száma'
  67.     FROM hallgatok
  68.     WHERE tszam=(SELECT MAX(tszam) FROM hallgatok)
  69.  
  70.     /*minden hallgato utolsó jegyei*/
  71.     SELECT nev, vdatum, tnev, jegy
  72.     FROM jegyek j, hallgatok h, tantargyak t
  73.     WHERE j.neptun=h.neptun AND j.tkod=t.tkod AND
  74.     vdatum=(SELECT MAX(vdatum) FROM jegyek j2
  75.     WHERE j2.neptun=j.neptun)
RAW Paste Data