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.

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>

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         |
| ...| ...                      |   ... |        ... |     ... |      ... | ...          |

Minden sor 7 adatot tartalmaz:

 

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;

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%";

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;

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;

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: ???

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: ???

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: ???

Jó munkát!