mysql> SHOW TABLES; +-------------------------+ | Tables_in_if16_jaagup_4 | +-------------------------+ | koolid | | loomakliinik | | pirnid | +-------------------------+ 3 rows in set (0.00 sec) 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 | | +-----------+-------------+------+-----+---------+----------------+ 5 rows in set (0.00 sec) mysql> SELECT * FROM koolid LIMIT 10; +----+----------------------------------+--------------+------------------+---------+ | id | koolinimi | vald | maakond | opilasi | +----+----------------------------------+--------------+------------------+---------+ | 1 | Viimsi Keskkool | Viimsi vald | Harju maakond | 1599 | | 2 | Tartu Kivilinna Gümnaasium | Tartu linn | Tartu maakond | 1439 | | 3 | Tallinna 21. Kool | Tallinn linn | Harju maakond | 1167 | | 4 | Keila Kool | Keila linn | Harju maakond | 1133 | | 5 | Tallinna Linnamäe Vene Lütseum | Tallinn linn | Harju maakond | 1035 | | 6 | Tartu Tamme Gümnaasium | Tartu linn | Tartu maakond | 1025 | | 7 | Gustav Adolfi Gümnaasium | Tallinn linn | Harju maakond | 1017 | | 8 | Pärnu Koidula Gümnaasium | Pärnu linn | Pärnu maakond | 972 | | 9 | Tallinna Reaalkool | Tallinn linn | Harju maakond | 963 | | 10 | Narva Humanitaargümnaasium | Narva linn | Ida-Viru maakond | 926 | +----+----------------------------------+--------------+------------------+---------+ 10 rows in set (0.00 sec) SELECT maakond, COUNT(*), SUM(opilasi), ROUND(AVG(opilasi), -1) FROM koolid GROUP BY maakond ORDER BY SUM(opilasi); +----------------------+----------+--------------+-------------------------+ | maakond | COUNT(*) | SUM(opilasi) | ROUND(AVG(opilasi), -1) | +----------------------+----------+--------------+-------------------------+ | Hiiu maakond | 7 | 918 | 130 | | Põlva maakond | 20 | 2804 | 140 | | Lääne maakond | 24 | 2815 | 120 | | Saare maakond | 19 | 3187 | 170 | | Järva maakond | 21 | 3296 | 160 | | Valga maakond | 21 | 3310 | 160 | | Jõgeva maakond | 25 | 3394 | 140 | | Rapla maakond | 21 | 3672 | 170 | | Võru maakond | 22 | 3694 | 170 | | Viljandi maakond | 34 | 5089 | 150 | | Lääne-Viru maakond | 40 | 6843 | 170 | | Pärnu maakond | 47 | 9111 | 190 | | Ida-Viru maakond | 42 | 14138 | 340 | | Tartu maakond | 54 | 17648 | 330 | | Harju maakond | 138 | 55056 | 400 | +----------------------+----------+--------------+-------------------------+ SELECT maakond, COUNT(*), SUM(opilasi), ROUND(AVG(opilasi), -1) FROM koolid WHERE opilasi<100 GROUP BY maakond ORDER BY SUM(opilasi); +----------------------+----------+--------------+-------------------------+ | maakond | COUNT(*) | SUM(opilasi) | ROUND(AVG(opilasi), -1) | +----------------------+----------+--------------+-------------------------+ | Hiiu maakond | 5 | 255 | 50 | | Võru maakond | 10 | 503 | 50 | | Saare maakond | 11 | 532 | 50 | | Järva maakond | 12 | 608 | 50 | | Ida-Viru maakond | 10 | 651 | 70 | | Põlva maakond | 12 | 652 | 50 | | Valga maakond | 13 | 659 | 50 | | Rapla maakond | 13 | 710 | 50 | | Lääne maakond | 15 | 734 | 50 | | Tartu maakond | 16 | 760 | 50 | | Jõgeva maakond | 16 | 839 | 50 | | Pärnu maakond | 25 | 1024 | 40 | | Lääne-Viru maakond | 24 | 1121 | 50 | | Viljandi maakond | 22 | 1123 | 50 | | Harju maakond | 37 | 2043 | 60 | +----------------------+----------+--------------+-------------------------+ SELECT maakond, koolinimi, opilasi FROM koolid WHERE opilasi= (SELECT MIN(opilasi) FROM koolid AS abitabel WHERE koolid.maakond=abitabel.maakond); -- Näidake iga maakonna suurim kool +----------------------+----------------------------+---------+ | maakond | koolinimi | opilasi | +----------------------+----------------------------+---------+ | Ida-Viru maakond | Sonda Kool | 30 | | Võru maakond | Pikakannu Kool | 20 | | Rapla maakond | Kuimetsa Algkool | 17 | | Järva maakond | Kabala Kool-Lasteaed | 16 | | Hiiu maakond | Kõpu Internaatkool | 15 | | Põlva maakond | Roosi Kool | 15 | | Valga maakond | Pikasilla Algkool | 13 | | Tartu maakond | Unipiha Algkool | 13 | | Viljandi maakond | Ramsi Lasteaed-Kool | 12 | | Lääne maakond | Vatla Põhikool | 12 | | Harju maakond | Prangli Põhikool | 10 | | Lääne-Viru maakond | Lahu Algkool | 9 | | Jõgeva maakond | Saduküla Lasteaed-Algkool | 7 | | Saare maakond | Ruhnu Põhikool | 6 | | Pärnu maakond | Massiaru Algkool | 3 | +----------------------+----------------------------+---------+ SELECT maakond, koolinimi, opilasi, (SELECT MIN(opilasi) FROM koolid AS abitabel WHERE koolid.maakond=abitabel.maakond) AS maakonnavahim FROM koolid; SELECT maakond, koolinimi, opilasi, opilasi/(SELECT MIN(opilasi) FROM koolid AS abitabel WHERE koolid.maakond=abitabel.maakond) AS mitukordavahimastsuurem FROM koolid; SELECT maakond, koolinimi, opilasi, opilasi/(SELECT MAX(opilasi) FROM koolid AS abitabel WHERE koolid.maakond=abitabel.maakond) AS osasuuremast FROM koolid; SELECT koolinimi, ROUND(opilasi/maakonnavahim, 1) AS kordasuurem FROM (SELECT maakond, koolinimi, opilasi, (SELECT MIN(opilasi) FROM koolid AS abitabel WHERE koolid.maakond=abitabel.maakond) AS maakonnavahim FROM koolid) vahetabel2; -- Leidke suurim õpilaste arv koolis Eestimaal -- Näidake iga kooli kohta, mitu protsenti moodustab nende õpilaste arv suurimast õpilaste arvust koolis Eestimaal -- Näidake iga maakonna kohta keskmine õpilaste arv -- Näidake välja need koolid, mille õpilaste arv on alla maakonna keskmise õpilaste arvu koolis SELECT MAX(opilasi) FROM koolid; SELECT koolinimi, opilasi, opilasi/(SELECT MAX(opilasi) FROM koolid) FROM koolid; SELECT koolinimi, opilasi, opilasi/(SELECT MAX(opilasi) FROM koolid) FROM koolid LIMIT 10; +----------------------------------+---------+-------------------------------------------+ | koolinimi | opilasi | opilasi/(SELECT MAX(opilasi) FROM koolid) | +----------------------------------+---------+-------------------------------------------+ | Viimsi Keskkool | 1599 | 1.0000 | | Tartu Kivilinna Gümnaasium | 1439 | 0.8999 | | Tallinna 21. Kool | 1167 | 0.7298 | | Keila Kool | 1133 | 0.7086 | | Tallinna Linnamäe Vene Lütseum | 1035 | 0.6473 | | Tartu Tamme Gümnaasium | 1025 | 0.6410 | | Gustav Adolfi Gümnaasium | 1017 | 0.6360 | | Pärnu Koidula Gümnaasium | 972 | 0.6079 | | Tallinna Reaalkool | 963 | 0.6023 | | Narva Humanitaargümnaasium | 926 | 0.5791 | +----------------------------------+---------+-------------------------------------------+ SELECT koolinimi, opilasi, round(100*opilasi/(SELECT MAX(opilasi) FROM koolid)) AS protsent FROM koolid LIMIT 10; SELECT koolinimi, opilasi, ROUND(100*opilasi/(SELECT MAX(opilasi) FROM koolid), 1) AS protsent FROM koolid ORDER BY opilasi LIMIT 10; +-----------------------------+---------+----------+ | koolinimi | opilasi | protsent | +-----------------------------+---------+----------+ | Massiaru Algkool | 3 | 0.2 | | Ruhnu Põhikool | 6 | 0.4 | | Saduküla Lasteaed-Algkool | 7 | 0.4 | | Lavassaare Lasteaed-Algkool | 9 | 0.6 | | Lahu Algkool | 9 | 0.6 | | Aidu Lasteaed-Algkool | 9 | 0.6 | | Prangli Põhikool | 10 | 0.6 | | Ramsi Lasteaed-Kool | 12 | 0.8 | | Vatla Põhikool | 12 | 0.8 | | Vohnja Lasteaed-Algkool | 12 | 0.8 | +-----------------------------+---------+----------+ SELECT maakond, AVG(opilasi) FROM koolid GROUP BY maakond; SELECT koolinimi, opilasi, maakond, (SELECT AVG(opilasi) FROM koolid as k2 WHERE koolid.maakond=k2.maakond) AS keskmine FROM koolid; SELECT koolinimi, opilasi, maakond FROM koolid WHERE opilasi < (SELECT AVG(opilasi) FROM koolid as k2 WHERE koolid.maakond=k2.maakond);