5. óra: Barlangok
Egy másik adatbázisban folytatjuk a tanulást. Új adatbázisunk Magyarország legismertebb barlangjainak adatait tartalmazza.
-1.
feladat: Indítson egy (fekete) terminált
A parancs: Alt+Ctrl+T Kb. ebbe a helyzetbe kell kerülnie (csak a 'barnabas' helyén az ön login-neve, ill utána az ön gépének neve áll):
barnabas@deg-11-14:~$
|
Az adatok importálása
0.1. feladat: Töltse
le a home könyvtárába (házikó)
az barlang.sql fájlt!
(Jobb-egér-kattintás a linkre, majd "Hivatkozás mentése más néven menüpont"!)
Ebben a fájlban vannak az adatok.
0.2. feladat: Térjen vissza a fekete terminálhoz! (De még ne lépjen be a mysql-be!)
0.3. feladat: 'Etesse meg' a mysql-lel a barlang.sql fájl tartalmát!
A parancs: mysql -u erettsegi -p < barlang.sql
(Utána adja meg a jelszót: pingvin)
Akkor jó ha gép a jelszó után nem szól vissza.
(Jobb-egér-kattintás a linkre, majd "Hivatkozás mentése más néven menüpont"!)
Ebben a fájlban vannak az adatok.
0.2. feladat: Térjen vissza a fekete terminálhoz! (De még ne lépjen be a mysql-be!)
0.3. feladat: 'Etesse meg' a mysql-lel a barlang.sql fájl tartalmát!
A parancs: mysql -u erettsegi -p < barlang.sql
(Utána adja meg a jelszót: pingvin)
Akkor jó ha gép a jelszó után nem szól vissza.
Lépjen vissza az adatbáziskezelõbe! (mysql -u erettsegi -p, majd a jelszó)
Nyissa meg az barlang adatbázist!
mysql>use barlang;
Blablabla...
Database changed
mysql>
Blablabla...
Database changed
mysql>
Az adatbázisban egyetlen tábla van, neve: barlang.
Az barlang tábla egy részlete (ön is lekérdezheti: select * from barlang;):
+----+--------------------------+-------+------------+---------+----------+--------------+
| id | nev | hossz | kiterjedes | melyseg | magassag | telepules |
+----+--------------------------+-------+------------+---------+----------+--------------+
| 1 | Soproni Zsivány-barlang | 110 | 12 | 12 | 0.0 | Fertõrákos |
| 2 | Abaligeti-barlang | 1712 | 48.7 | 10 | 38.7 | Abaliget |
| 3 | Duó-zsomboly | 62.8 | 31 | 31 | 0.0 | Pécs |
| 4 | Remény-zsomboly | 60 | 51.5 | 51.5 | 0.0 | Orfû |
| 5 | Spirál-víznyelõ | 850 | 86.4 | 86.4 | 0.0 | Pécs |
| 6 | Büdöskúti-zsomboly | 40 | 20.5 | 20.5 | 0.0 | Pécs |
| ...| ... | ... | ... | ... | ... | ... |
| id | nev | hossz | kiterjedes | melyseg | magassag | telepules |
+----+--------------------------+-------+------------+---------+----------+--------------+
| 1 | Soproni Zsivány-barlang | 110 | 12 | 12 | 0.0 | Fertõrákos |
| 2 | Abaligeti-barlang | 1712 | 48.7 | 10 | 38.7 | Abaliget |
| 3 | Duó-zsomboly | 62.8 | 31 | 31 | 0.0 | Pécs |
| 4 | Remény-zsomboly | 60 | 51.5 | 51.5 | 0.0 | Orfû |
| 5 | Spirál-víznyelõ | 850 | 86.4 | 86.4 | 0.0 | Pécs |
| 6 | Büdöskúti-zsomboly | 40 | 20.5 | 20.5 | 0.0 | Pécs |
| ...| ... | ... | ... | ... | ... | ... |
Minden sor 7 adatot tartalmaz:
- id: A barlang egyedi azonosítója, sorszáma (típusa: egész szám);
- nev: a barlang neve (típusa: szöveg);
- hossz: a barlang hossza m-ben (típusa: tizedes tört);
- kiterjedes: a barlang kiterjedése m-ben (típusa: tizedes tört);
- melyseg: a barlang mélysége a bejárattól mérve m-ben (típusa: tizedes tört);
- magassag: a barlang magassága a bejárattól mérve m-ben (típusa: tizedes tört);
- telepules: annak a telepólésnek a neve, amelyhez a barlang tartozik (típusa: szüveg).
Feladatok
1. feladat: Készítsen
lekérdezést, amely ábécérendben jeleníti meg a 100 méternél mélyebb
barlangok nevét!
A parancs: SELECT nev FROM barlang WHERE melyseg>100 ORDER BY nev;
A parancs: SELECT nev FROM barlang WHERE melyseg>100 ORDER BY nev;
2. feladat: A
barlangok régies elnevezése közé tartozik a „lyuk”,
a „zsomboly” és a „lik”.
Lekérdezés segítségével jelenítse meg azoknak a barlangoknak a nevét,
amelyek õrzik ezeket a régi neveket!
A parancs: SELECT nev FROM barlang WHERE nev LIKE "%lyuk%" OR
nev LIKE "%zsomboly%" OR nev LIKE "%lik%";
A parancs: SELECT nev FROM barlang WHERE nev LIKE "%lyuk%" OR
nev LIKE "%zsomboly%" OR nev LIKE "%lik%";
3. feladat: Készítsen
lekérdezést, amely megadja, hogy az egyes településekhez hány barlang
tartozik! A listát darabszám szerint csökkenõen, a település nevével
együtt jelenítse meg!
A parancs: SELECT telepules, COUNT(*) as db FROM barlang GROUP BY telepules
ORDER BY db DESC;
A parancs: SELECT telepules, COUNT(*) as db FROM barlang GROUP BY telepules
ORDER BY db DESC;
4. feladat: Melyik a
leghosszabb barlang? Lekérdezés segítségével írassa ki a barlang nevét
és hosszát méterben!
A parancs: SELECT nev, hossz FROM barlang ORDER BY hossz DESC LIMIT 1;
A parancs: SELECT nev, hossz FROM barlang ORDER BY hossz DESC LIMIT 1;
5. feladat: Lekérdezés
segítségével listázza ki a „Fecske-lyuk” barlang településén található
többi barlang nevét és kiterjedését!
A parancs: ???
A parancs: ???
6. feladat: Különlegesek
azok a barlangok, amelyek bejáratához képest függõleges irányban
ugyanannyit lehet mászni felfelé, illetve lefelé. Lekérdezés segítségével gyûjtsük ki azoknak a barlangoknak a nevét, amelyek magassága és mélysége legfeljebb 1 méterben tér el, és nem 0 mélységûek!
A parancs: ???
ugyanannyit lehet mászni felfelé, illetve lefelé. Lekérdezés segítségével gyûjtsük ki azoknak a barlangoknak a nevét, amelyek magassága és mélysége legfeljebb 1 méterben tér el, és nem 0 mélységûek!
A parancs: ???
7.1. feladat: Határozza
meg lekérdezés segítségével, hogy az egyes településekhez tartozó
barlangoknak mennyi az össz.hossza!
Jelenjen meg a település neve, és a hozzátartozó barlangok össz.hossza. A lista az össz.hossz szerint csökkenõen rendezve jelenjen meg.
A parancs: ???
7.2 feladat: A listában az össz.hosszúság legyen egész számra kerekítve!
A parancs: ???
Jelenjen meg a település neve, és a hozzátartozó barlangok össz.hossza. A lista az össz.hossz szerint csökkenõen rendezve jelenjen meg.
A parancs: ???
7.2 feladat: A listában az össz.hosszúság legyen egész számra kerekítve!
A parancs: ???
Jó munkát!