Adatbázisok szerver oldali programozása Labor, 2006.03.07.

A VIK Wikiből
Ugrás a navigációhoz Ugrás a kereséshez

Ez az oldal a korábbi SCH wiki-ről lett áthozva. Az eredeti változata itt érhető el.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor kérlek javíts rajta egy rövid szerkesztéssel.

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót



<< Labor, 2006.03.07. >>

  1. Futtasd le a minta adatbázisok menüpont alatt található scripteket, amik létrehozzák a CUKRÁSZ adatbázis tábláit, és feltöltik egységes minta adatokkal!
  2. Listázd ki, megnevezés szerint fordított ABC sorrendben, hogy milyen félkész termékek vannak (minden adatot)!
    • File / New / SQL Window
    • =SELECT * FROM felkesz ORDER BY felkesz_nev DESC;=
    • Ha a találatok nem férnek ki az ablakba, csak az első néhányat jeleníti meg. A többi a dupla zöld lefele nyíllal kérhető le.
  3. Listázd ki, hogy a gyümölcstorta alap milyen alapanyagokból áll, és melyikből mennyi kell! (név, mennyiség, egység)
    SELECT anyag_nev AS nev, 
    		 fa_mennyiseg || ' ' || egyseg_nev AS mennyiseg
    FROM felkesz, felkesz_anyag, anyag, egyseg
    WHERE felkesz.felkesz_id = felkesz_anyag.fa_felkeszid
    		AND anyag.anyag_id = felkesz_anyag.fa_anyagid
    		AND anyag.anyag_egyseg = egyseg.egyseg_id
    		AND felkesz.felkesz_nev = 'gyumolcstorta alap'
  4. Listázd ki azokat a termékeket, amihez kell vaníliáscukor!
    SELECT termek_nev
    FROM termek, termek_anyag, anyag
    WHERE termek.termek_id = termek_anyag.ta_termekid
    		AND anyag.anyag_id = termek_anyag.ta_anyagid
    		AND anyag_nev = 'vaniliascukor'
    UNION
    SELECT termek_nev
    FROM termek, termek_felkesz, felkesz, felkesz_anyag, anyag
    WHERE termek.termek_id = termek_felkesz.tf_termekid
    		AND felkesz.felkesz_id = termek_felkesz.tf_felkeszid
    		AND felkesz.felkesz_id = felkesz_anyag.fa_felkeszid
    		AND anyag.anyag_id = felkesz_anyag.fa_anyagid
    		AND anyag_nev = 'vaniliascukor'
  5. Listázd ki azokat a termékeket, amikhez nem kell vaníliáscukor!
    SELECT termek_nev FROM termek
    MINUS
    (SELECT termek_nev
    FROM termek, termek_anyag, anyag
    WHERE termek.termek_id = termek_anyag.ta_termekid
    		AND anyag.anyag_id = termek_anyag.ta_anyagid
    		AND anyag_nev = 'vaniliascukor'
    UNION
    SELECT termek_nev
    FROM termek, termek_felkesz, felkesz, felkesz_anyag, anyag
    WHERE termek.termek_id = termek_felkesz.tf_termekid
    		AND felkesz.felkesz_id = termek_felkesz.tf_felkeszid
    		AND felkesz.felkesz_id = felkesz_anyag.fa_felkeszid
    		AND anyag.anyag_id = felkesz_anyag.fa_anyagid
    		AND anyag_nev = 'vaniliascukor')
  6. Listázd ki a legolcsóbb anyagot!
    SELECT anyag_nev FROM anyag 
    WHERE anyag_egysegar = (SELECT MIN(anyag_egysegar) FROM anyag)
  7. Listázd ki, az alapanyag neve szerint sorrendben, hogy a gyümölcstorta milyen alapanyagokból készül (név, mennyiség)!
    SELECT anyag_nev
    FROM termek, termek_anyag, anyag
    WHERE termek.termek_id = termek_anyag.ta_termekid
    		AND anyag.anyag_id = termek_anyag.ta_anyagid
    		AND termek.termek_nev = 'Gyumolcstorta'
    UNION
    SELECT anyag_nev
    FROM termek, termek_felkesz, felkesz, felkesz_anyag, anyag
    WHERE termek.termek_id = termek_felkesz.tf_termekid
    		AND felkesz.felkesz_id = termek_felkesz.tf_felkeszid
    		AND felkesz.felkesz_id = felkesz_anyag.fa_felkeszid
    		AND anyag.anyag_id = felkesz_anyag.fa_anyagid
    		AND termek.termek_nev = 'Gyumolcstorta'
  8. Számold ki, hogy egy gyümölcstorta alap mennyibe kerül!
    SELECT SUM(fa_mennyiseg*anyag_egysegar/felkesz_mennyiseg) AS ar
    FROM felkesz, felkesz_anyag, anyag
    WHERE felkesz.felkesz_id = felkesz_anyag.fa_felkeszid
    		AND anyag.anyag_id = felkesz_anyag.fa_anyagid
    		AND felkesz.felkesz_nev = 'gyumolcstorta alap'
  9. Számold ki, hogy az egyes félkész termékek hány forintba kerülnek!
  10. Listázd ki, hogy mely félkész termékek olcsóbbak 150 Ft-nál!
  11. Számold ki, hogy egy gyümölcstorta mennyibe kerül!
  12. Számold ki, hogy az egyes termékek hány forintba kerülnek!

-- Peti - 2006.03.07.