Feladatok:
Az alábbi
lekérdezéseket
előbb
természetes nyelven fogalmazzuk meg,
majd "táblákban gondolkodva" hogyan tudjuk mely
táblából milyen műveletekkel
megkapni az eredménytáblát?
Ezután adjuk meg
formálisan is relációs
algebrában!
Relációs algebrai műveletek.
Alapműveletek és származtatott műveletek.
/készlet1: vetítés,
kiválasztás, Descartes szorzat (direkt
szorzat), unió, különbség.
/készlet2: vetítés,
kiválasztás, természetes
összekapcsolás, átnevezés,
unió,
különbség
(megj.: előadáson ezt a készlet2-t
tekintjük a relációs algebrai
alapműveleteknek).
A Descartes szorzat kifejezése
relációs algebrában a
/készlet2 illetve a természetes
összekapcsolás kifejezése
relációs
algebrában a /készlet1 műveletei
segítségével. E1.1.
Egyszerű
táblák
és lekérdezések a kezdetekhez
Szeret
tábla és feladatok
és a tábla létrehozása: create_szeret
Reláció séma: Szeret(NEV, GYUMOLCS)
---------------------------
(A) Kezdő szintű feladatok relációs algebrai lekérdezésekre az első gyakorlatra
---------------------------
1. Melyek azok a gyümölcsök,
amelyeket
Micimackó
szeret?
2. Melyek azok a gyümölcsök,
amelyeket
Micimackó
nem szeret? (de valaki más igen)
3. Kik szeretik az almát?
4. Kik nem szeretik az almát? (de valami
mást
igen)
---
5. Kik szeretik az almát vagy a
körtét? (megengedő vagy)
6. Kik szeretik az almát is és a
körtét is?
7. Kik azok, akik szeretik az almát, de nem
szeretik a
körtét?
8. Kik szeretik vagy az almát vagy a
körtét, de csak az egyiket?
(kizáró vagy)
---
9. Kik szeretnek legalább
kétféle
gyümölcsöt?
10. Kik szeretnek legalább
háromféle
gyümölcsöt?
11. Kik szeretnek legfeljebb kétféle
gyümölcsöt?
12. Kik szeretnek pontosan kétféle
gyümölcsöt?
---------------------------
(B) Haladó szintű feladatok relációs algebrai lekérdezésekre (3 v. 5.gyak)
---------------------------
13. Kik szeretnek minden gyümölcsöt?
14. Kik azok, akik legalább azokat a
gyümölcsöket
szeretik, mint Micimackó?
15. Kik azok, akik legfeljebb azokat a
gyümölcsöket
szeretik, mint Micimackó?
16. Kik azok, akik pontosan azokat a
gyümölcsöket
szeretik, mint Micimackó?
17. Melyek azok a (név,név) párok,
akiknek legalább egy gyümölcsben
eltér
az
ízlésük, azaz az
egyik szereti ezt a gyümölcsöt, a
másik meg nem?
18. Melyek azok a (Nev,Nev) párok,
akiknek pontosan ugyanaz az
ízlésük,
vagyis pontosan ugyanazokat
a
gyümölcsöket szeretik?
---
A maximum kifejezése alap relációs algebrában olyan módon, ahogy az előadáson
szerepelt (Termék-PC példában az a feladat, amikor a
leggyorsabb pc-t kerestük)
19. Legyen Mesehős(Nev, Suly) a
relációséma és a
reláció azt
tartalmazza,
hogy ki milyen
súlyú. Ki a
legsúlyosabb?
(Segítség: a maximum az az
érték, aminél nincs nagyobb, ezeket el
kell hagyni)
(Másik megoldás: hányadossal, mint ahogyan a minden (az összes) gyümölcsöt
kifejeztük hasonlóan: a maximum az
összes többi
értéknél nagyobb vagy
egyenlő)
(Az SQL-ben
természetesen az összesítő függvényekkel
egyszerűbben is kifejezzük). E1.2.
Dolgozó (EMP) és Osztály (DEPT)
táblákon
alapuló lekérdezések
Dolgozó,
Osztály táblák és feladatok
és a táblák
létrehozása
create_dolgozo
---------------------------
(A) Kezdő szintű feladatok relációs algebrai lekérdezésekre az első gyakorlatra:
---------------------------
1. Kik azok a dolgozók, akiknek a
fizetése > 2800?
2. Kik azok a dolgozók, akik a 10-es vagy a 20-as
osztályon dolgoznak?
3. Kik azok a dolgozók, akiknek a főnöke
KING?
4. Kik azok a dolgozók, akik
főnökének a főnöke KING?
5. Adjuk meg azoknak a főnököknek a
nevét, akiknek a foglalkozása nem
'MANAGER'.
6. Adjuk meg azokat a dolgozókat, akik
többet keresnek a főnöküknél.
7. Kik azok a dolgozók, akik
osztályának telephelye DALLAS vagy CHICAGO?
8. Kik azok a dolgozók, akik
osztályának telephelye nem DALLAS
és nem CHICAGO?
9. Adjuk meg azoknak a nevét, akiknek a fizetése
> 2000 vagy a CHICAGO telephelyű
osztályon dolgoznak.
---------------------------
(A) Kezdő szintű feladatok relációs algebrai lekérdezésekre az első gyakorlatra
---------------------------
a) Adjuk meg azokat a hajóosztályokat a
gyártó országok nevével
együtt,
amelyeknek az ágyúi
legalább 16-os kaliberűek.
b) Melyek azok a hajók, amelyeket 1921 előtt avattak fel?
c) Adjuk meg a Denmark Strait-csatában elsüllyedt
hajók nevét.
d) Az 1921-es washingtoni egyezmény betiltotta a 35000
tonnánál súlyosabb
hajókat. Adjuk meg azokat a
hajókat,
amelyek megszegték az egyezményt.
e) Adjuk meg a Guadalcanal csatában részt vett
hajók nevét,
vízkiszorítását
és
ágyúinak a
számát.
f) Adjuk meg az adatbázisban szereplő összes
hadihajó nevét.
(Ne feledjük, hogy a Hajók
relációban nem feltétlenül
szerepel az összes hajó!)
---------------------------
(B) Haladó szintű feladatok relációs algebrai lekérdezésekre (3 v. 5.gyak)
---------------------------
!g) Adjuk meg azokat az osztályokat, amelyekbe
csak egy
hajó tartozik.
!h) Melyek azok az országok, amelyeknek
csatahajóik
is és cirkálóhajóik is
voltak?
!i) Adjuk meg azokat a hajókat, amelyek
"újjáéledtek", azaz egyszer
már megsérültek
egy csatában, de egy
későbbi csatában újra harcoltak.
Feladatok: !! Ezek az előadáson
ismertetett példák, a gyakorlaton ne legyenek!!
---------------------------
(A) Kezdő szintű feladatok relációs algebrai lekérdezésekre az első előadáshoz
---------------------------
a) Melyek azok a PC-modellek, amelyek
sebessége
legalább 3.00?
b) Mely gyártók
készítenek
legalább száz gigabájt
méretű merevlemezzel rendelkező laptopot?
c) Adjuk meg a B gyártó
által
gyártott összes termék
modellszámát és
árát, típustól
függetlenül.
d) Adjuk meg valamennyi színes
lézernyomtató modellszámát.
e) Melyek azok a gyártók, amelyek
laptopot
árulnak, PC-t viszont nem?
! f) Melyek azok a merevlemezméretek, amelyek
legalább két PC-ben
megtalálhatók?
! g) Adjuk meg azokat a PC-modell párokat, amelyek
ugyanolyan gyorsak és
a
memóriájuk
is ugyanakkora. Egy pár csak
egyszer jelenjen meg, azaz ha már szerepel
az (i, j), akkor
a (j, i) ne jelenjen meg.
!! h) Melyek azok a gyártók, amelyek
gyártanak legalább két,
egymástól különböző,
legalább 2.80
gigahertzen működő
számítógépet (PC-t vagy
laptopot)
---------------------------
(B) Haladó szintű feladatok relációs algebrai lekérdezésekre (3 v. 5.gyak)
---------------------------
!! i) Melyik gyártó gyártja a
leggyorsabb számítógépet
(PC-t vagy laptopot)?
!! j) Melyik gyártó gyárt
legalább három,
különböző sebességu PC-t?
!! k) Melyek azok a gyártók, amelyek pontosan
három típusú PC-t
forgalmaznak?