Osa 2 | Yhteenveto ja ryhmittely
Koostefunktiot
Joskus on tarpeellista kerätä tietoja ryhmiteltynä. Esimerkiksi verkkokaupan myynneistä voisi olla kiva tietää myynnit tuoteryhmittäin: kuinka paljon on tuottanut tietokoneiden myynti tai kuinka paljon kodinkoneiden myynti. Yleisimmät koostefunktiot ovat:
Laskee kuinka monta riviä on Tuotteet-taulussa
COUNT()laskee rivien määränSUM()laskee summan arvoistaMIN()hakee pienimmän arvonMAX()hakee suurimman arvon
SELECT COUNT(*) FROM Tuotteet;
Laskee kuinka monta riviä on Tuotteet-taulussa
SELECT SUM(hinta) FROM Tuotteet;
Laskee taas mikä on kaikkien tuotteiden yhteenlaskettu summa (eli myynnin kokonaismäärä).Ryhmittely
Rajaus ryhmittelyn jälkeen
Kun
Kysely on siis aina järjestyksessä
Kyselyn saa aina halutessaan myös rivittää, esimerkiksi siis
WHERE-lause rajaa hakutuloksia, ryhmittelyn jälkeinen rajaus tehdään HAVING-komennolla. Seuraava komento siis hakee tuoteryhmät , joissa on vähintään 5 erillistä tuotetta ja laskee niiden tuotteiden määrät:SELECT tuoteryhma, COUNT(*) FROM Tuotteet GROUP BY tuoteryhma HAVING COUNT(*) >=5;Kysely on siis aina järjestyksessä
SELECT - FROM - WHERE - GROUP BY - HAVING - ORDER BY;
Kyselyn saa aina halutessaan myös rivittää, esimerkiksi siis
SELECT
tuoteryhma, COUNT(*)
FROM
Tuotteet
GROUP BY
tuoteryhma
HAVING
COUNT(*) >=5;