Kollégák, diákok és a Google segítségével! Köszönet nekik!
Egytáblások
Egyszerű felépítésű, kevés rekordot tartalmazó, egymástól független adattáblák. A lehetőségekhez képest változatos adattípusokkal. Táblán belül is sok ismétlődéssel, hogy a GROUP BY záradékot is legyen lehetőség gyakorolni. Két nézet tábla is van, ami további beszélgetésre ad lehetősget.
egytablasok.sql (719 906 byte) letöltése - kapcsolódó feladatok (8 723 byte)
Országok
Az infojegyzet.hu-ról letölthető minta adatbázis. A honlapon további információk és gyakorlásra alkalmas feladatok találhatók!
orszagok.sql (39 148 byte) letöltése - kapcsolódó feladatok (3 633 byte)
Tagdíj
Az infojegyzet.hu-ról letölthető minta adatbázis. A honlapon további információk és gyakorlásra alkalmas feladatok találhatók!
tagdij.sql (5 378 byte) letöltése - kapcsolódó feladatok (6 585 byte)
Pizza
Az infojegyzet.hu-ról letölthető minta adatbázis. A honlapon további információk és gyakorlásra alkalmas feladatok találhatók!
pizza.sql (6 412 byte) letöltése - kapcsolódó feladatok (13 201 byte)
join gyakorláshoz
Az összekapcsolások fajtái (SQL:1999)
Direktszorzat (kereszt-összekapcsolás)
Két tábla direkt szorzata az alábbi esetekben jön létre:
- az összekapcsolási feltétel elhagyásával
- nem megengedett összekapcsolási feltétellel
- az első tábla összes sorának összekapcsolása a másik tábla összes sorával - CROSS JOIN
Természetes összekapcsolás
A NATURAL JOIN utasítás a benne szereplő két tábla azonos nevű oszlopain alapul.
A két tábla azon sorait eredményezi, ahol az azonos nevű oszlopokban szereplő értékek megegyeznek.
Ha az azonos nevű oszlopok adattípusa eltérő, akkor hibával tér vissza az utasítás.
SELECT t1.*, t2.* FROM t1 NATURAL JOIN t2;
USING utasítással történő összekapcsolás
JOIN tábla USING oszlopnév – az oszlopnév értékeinek egyenlőségi vizsgálatán alapuló összekapcsolás.
Ha több oszlopnak azonos ugyanaz a neve megadhatjuk, hogy mely oszlopokat akarjuk használni az egyenlőségen alapuló összekapcsoláshoz.
Ne használjunk alias nevet azon oszlopokra, amelyeket a USING kulcsszó után adtunk meg.
SELECT t1.*, t2.* FROM t1 JOIN t2 USING(num);
Teljes (vagy két oldali) összekapcsolás
Belső összekapcsolásnak nevezzük azon összekapcsolásokat, amelyek két tábla megegyező soraival térnek vissza. - [INNER] JOIN -
Két tábla olyan összekapcsolását, amely a belső összekapcsolás eredményéhez hozzáveszi a bal (vagy jobboldali) tábla összes sorát, baloldali (vagy jobboldali) külső összekapcsolásnak nevezzük.
Tetszőleges feltételen alapuló összekapcsolás
JOIN tábla ON tábla1.oszlopnév – az ON után szereplő egyenlőségi feltétel vizsgálatán alapuló összekapcsolás
SELECT t1.*, t2.* FROM t1 JOIN t2 ON t1.num = t2.num;
SELECT t1.*, t2.* FROM t1 JOIN t2 ON t1.num <= 5 AND t2.num <= 5 AND t1.num = t2.num;
SELECT t1.*, t2.* FROM t1 JOIN t2 ON t1.num BETWEEN 3 AND 5 AND t1.num = t2.num;
SELECT t1.*, t2.* FROM t1 JOIN t2 ON t1.num % 2 = 0 AND t1.num = t2.num;
Gyümölcsök
Mely gyümölcsök szerepelnek mindkét táblában?
Megoldás: SELECT t1.gyumolcs FROM t1 JOIN t2 ON t1.gyumolcs = t2.gyumolcs;
Mely gyümölcsök szerepelnek CSAK a t1 táblában? (a t2-ben nem)
Megoldás: SELECT t1.* FROM t1 LEFT JOIN t2 USING(gyumolcs) WHERE t2.id IS NULL;
Mely gyümölcsök szerepelnek CSAK a t2 táblában? (a t1-ben nem)
Megoldás: SELECT t2.* FROM t1 RIGHT JOIN t2 USING(gyumolcs) WHERE t1.id IS NULL;
Csak az egyik táblában szereplő gyümölcsök.
Megoldás:
SELECT t2.* FROM t1 RIGHT JOIN t2 USING(gyumolcs) WHERE t1.id IS NULL
UNION
SELECT t1.* FROM t1 LEFT JOIN t2 USING(gyumolcs) WHERE t2.id IS NULL;
SELECT * FROM t2 WHERE NOT EXISTS (SELECT * FROM t1 WHERE t1.gyumolcs = t2.gyumolcs)
UNION
SELECT * FROM t1 WHERE NOT EXISTS (SELECT * FROM t2 WHERE t1.gyumolcs = t2.gyumolcs);
Mely gyümölcsök szerepelnek a táblák valamelyikében?
Megoldás: SELECT t2.gyumolcs FROM t2 UNION SELECT t1.gyumolcs FROM t1 ORDER BY gyumolcs;
Mely gyümölcsöknek tér el az ára?
Megoldás: SELECT t2.*, t1.* FROM t1 JOIN t2 ON t1.gyumolcs = t2.gyumolcs AND t2.egysegar != t1.egysegar;
Az összes gyümölcs az összes jellemzőjével. (Ha mindkét táblában szerepel, akkor a magasabb árral jelenjen meg.)
Megoldás:
Vásárlások
Egyszerű JOIN és GROUP BY gyakorló
vasarlasok.sql (17 803 byte) letöltése - kapcsolódó feladatok (2 173 byte)
Atlétika világbajnokság 2017
2017-es Londonban megtartott VB egyéni dobogós eredményei
Monthy Python
Régebbi vizsga feleadat
monthypython.sql (607 626 byte) letöltése - kapcsolódó feladatok (699 byte)
Szinkronhangok
2023 emelt érettségi adatbázisa
szinkronhangok.sql (24 576 byte) letöltése - kapcsolódó feladatok (3 167 byte)
Roxfort
A Roxfort Boszorkány- és Varázslóképző Szakiskola gyakorlatai. Papp Dávid pályaelhagyó kolléga hagyatéka 2021-ből!
Oktat
Oracle-honlapról volt letölthető ez a minta adatbázis. Hozzá tartozó feladat gyűjtemény
Classic Models
A MySQLTUTORIAL-ról letölthető minta adatbázis. A honlapon további feladatok és ismeretek találhatók.
Employees Database
A MySQL-ről letölthető minta adatbázis. A honlapon további feladatok és ismeretek találhatók. Lehet szükséged lesz a parancssor használatára: mysql -h 127.0.0.1 -u root -p < employees.sql
Bowling League Database
Entertainment Agency Database
Recipes Database
by Greg Helton
Salesorders Database
School Scheduling Database
Országok és városok
Magyarországi helységek
2023.01.01 KSH adatok alapján
helysegek.sql (1 911 391 byte) letöltése - kapcsolódó feladatok (1 415 byte)
Sakila Database
A MySQL dev-ről is letölthető minta adatbázis. Leírás és feladat
Törpe tárnák
Tari Balázs Programozás és algoritmizálás JavaScript nyelven elektronikus tananyag-ában szereplő minta adatbázis.
A dombi törpék egész évben szorgosan bányásznak. Tíz tárnában dolgoznak, aranyat, vasat, ezüstöt és rezet hoznak fel a föld mélyéből. A klánokba szerveződött törpék társadalmában a nők is ugyanúgy kiveszik a munkából a részüket, mint a férfiak, azaz ők is bányásznak. Minden törpe több helyen is dolgozhatott az év folyamán, egyszer vasat keresett, máskor például aranyat.
Magyarországi irányítószámok
A mindenkori magyarországi irányítószámok a Magyar Posta honlapjáról letölthetők. Ha kicsit is figyelsz a felhasználói adatbevitel segítésére, akkor a minimum, hogy nem íratod be vele a helység nevét. Validálásnál is kihagyhatatlan az irányítószám és helységnév páros ellenőrzése. Órán nem szokott idő lenni arra, hogy rámutassak, az irányítószám NEM egyedi azonosító!
Filmek
Filmek néhány adattal.
Könyvtári adatok
Könyvek adatai kölcsönzéshez.
Marvel-moziuniverzum filmjei
Vizes munkák
Kémiai elemek
A kémiai elemek és tulajdonságaik. Mert mégiscsak vegyésznek készültem.