mysql> explain koolid; +-----------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | koolinimi | varchar(50) | YES | | NULL | | | vald | varchar(50) | YES | | NULL | | | maakond | varchar(50) | YES | | NULL | | | opilasi | int(11) | YES | | NULL | | +-----------+-------------+------+-----+---------+----------------+ CREATE TABLE haldusyksused( nimetus VARCHAR(30) PRIMARY KEY, rahvaarv INT, pindala FLOAT ); DROP TABLE haldusyksused; INSERT INTO haldusyksused VALUES ('Tallinn linn', 400292, 158.27); INSERT INTO haldusyksused VALUES ('Tartu linn', 103740, 38.8); INSERT INTO haldusyksused VALUES ('Keila linn', 9454, 10.46); INSERT INTO haldusyksused VALUES ('Pärnu linn', 43966, 32.22); DELETE FROM haldusyksused; SELECT * FROM koolid JOIN haldusyksused ON koolid.vald = haldusyksused.nimetus; | 490 | Hilariuse Kool | Tallinn linn | Harju maakond | 22 | Tallinn linn | 400292 | 158.27 | | 2 | Tartu Kivilinna Gümnaasium | Tartu linn | Tartu maakond | 1439 | Tartu linn | 103740 | 38.8 | | 6 | Tartu Tamme Gümnaasium | Tartu linn | Tartu maakond | 1025 | Tartu linn | 103740 | 38.8 | | 32 | Tartu Kommertsgümnaasium | Tartu linn | Tartu maakond | 822 | Tartu linn | 103740 | 38.8 | SELECT koolinimi, haldusyksused.nimetus, opilasi, rahvaarv, opilasi*100/rahvaarv FROM koolid JOIN haldusyksused ON koolid.vald = haldusyksused.nimetus; CREATE TABLE vallad( vallanimi VARCHAR(50) NOT NULL PRIMARY KEY, vallakeskus VARCHAR(50), maakond VARCHAR(50), FOREIGN KEY(maakond) REFERENCES maakonnad(maakonnanimi) ); SELECT * FROM vallad JOIN maakonnad ON vallad.maakond=maakonnad.maakonnanimi JOIN riigid ON maakonnad.riik=riigid.riiginimi JOIN maailmajaod ON riik.maailmajagu=maailmajaod.nimetus