MySQL duomenų bazės (BIT)
Užklausos
/*
Suskaičiuoja kiek iš viso yra įrašų (elučių)
SELECT count(*) FROM country
Suskaičiuoja kiek yra tame stulpelyje įrašų kurie yra ne null
SELECT count(IndepYear) FROM country
Norint sužinoti kiek šalių yra azijoje
SELECT count(*) as countrys_in_asia FROM country WHERE Continent like "Asia"
Norint paimti minimalią, maksimalią, vidutinę gyvenimo trukmę Afrikos valstybėse
SELECT min(LifeExpectancy) as min_life, max(LifeExpectancy) as max_life, avg(LifeExpectancy) as avg_life FROM country WHERE Continent like "Africa"
Paimame visas valstybes iš afrikos kur gyvenimo trukmė yra didesnė nei vidutiniška
SELECT * FROM country WHERE Continent like "Africa" AND LifeExpectancy>(SELECT avg(LifeExpectancy) FROM country WHERE Continent like "Africa")
SELECT name, LifeExpectancy, Region FROM country WHERE LifeExpectancy=(SELECT max(LifeExpectancy) FROM country)
SELECT name, LifeExpectancy, Region FROM country ORDER BY LifeExpectancy DESC limit 1
Paimti kiek respubliku yra kontinente ir išvesti tik tuos kontinentus kur respublikų yra daugiau nei 30
SELECT count(*) as total_respublic, Continent FROM country WHERE GovernmentForm like "%Republic%" GROUP BY Continent HAVING total_respublic>30
Vykdymo tvarka:
1. FROM table (JOIN, ON, ....)
2. WHERE
3. GROUP BY
4. select, agregavimas
5. HAVING
6. ORDER BY
7. LIMIT
Užrašymas
SELECT ... FROM ... JOIN ... ON ... WHERE ... GROUP BY .. HAVING ... ORDER BY ... LIMIT ...
SELECT Continent, GovernmentForm, AVG(LifeExpectancy) as avg_life FROM country GROUP by Continent, GovernmentForm ORDER BY Continent ASC, avg_life DESC
*/