Lataa esitys
Esittely latautuu. Ole hyvä ja odota
1
Aggregaattifunktiot (1)
Mahdollistavat usean rivin yhdistämisen yhdeksi tulostaulun riviksi SQL:ssä seuraavat aggregaattifunktiot: Lukumäärä COUNT Maksimi MAX, minimi MIN Keskiarvo AVG Summa SUM
2
Aggregaattifunktiot (2)
Kirjoitetaan kyselyn SELECT-osaan muodossa Funktio(Attribuutti) Kyselyssä lisäksi normaalit osat FROM ja WHERE, jotka toimivat normaalisti
3
Aggregaattifunktiot (3)
SELECT-osa voi sisältää vain aggregaattifunktioita, tuloksessa vain 1 rivi Edellyttäen, että ryhmittelyattribuutteja ei käytetä Aggregaattifunktioita sisältävät kyselyt evaluoidaan tavalliseen tapaan Muodostetaan FROM-osan relaatio Valitaan WHERE-osassa määritellyt rivit Lasketaan SELECT-osassa määritellyt aggregaattifunktiot
4
COUNT(Attribuutti) Palauttaa attribuutin arvojen määrän
Arvojen ei tarvitse poiketa toisistaan, joten laskee käytännössä relaation rivien määrän Em. syystä attribuutin sijasta voidaan käyttää myös jokerimerkkiä * SELECT COUNT(*) FROM Toimittaja; SELECT COUNT(*) FROM Asiakas, Tilaus WHERE Etunimi=’Hanhikki’ AND AsiakasId=Asiakas.Id; SELECT COUNT(DISTINCT AsiakasId) FROM Tilaus;
5
MAX(Attribuutti), MIN(Attribuutti)
Palauttavat attribuutin arvojen maksimin tai minimin Edellytyksenä, että attribuutin arvojoukko on järjestetty SELECT MAX(Hinta) FROM Tuote; SELECT MIN(Hinta) AS Minimi, MAX(Hinta) AS Maksimi FROM Asiakas, Tilaus, Tuote WHERE Asiakas.Etunimi=’Laupias’ AND Asiakas.Id=AsiakasId AND Tuote.Id=TuoteId;
6
AVG(Attribuutti) Palauttaa attribuutin arvojen keskiarvon
Edellytyksenä, että attribuutin arvojoukko on lukujoukko SELECT AVG(Hinta) FROM Tuote, Toimittaja WHERE Toimittaja.Nimi=’Jaskan vimpain’ AND ToimittajaId=Toimittaja.Id;
7
SUM(Attribuutti) Palauttaa attribuutin arvojen summan
Edellytyksenä, että attribuutin arvojoukko on lukujoukko SELECT SUM(Hinta) FROM Asiakas, Tilaus, Tuote WHERE Asiakas.Etunimi=’Laupias’ AND Asiakas.Id=AsiakasId AND Tuote.Id=TuoteId;
8
Ryhmittelyattribuutit (1)
Toisinaan on tarpeen kohdistaa funktiot pienempiin kokonaisuuksiin Esim. hae kunkin jotain tilanneen asiakkaan tilausten arvo Lisätään kyselyyn GROUP BY –osa, jossa luetellaan ryhmittelyattribuutit
9
Ryhmittelyattribuutit (2)
Evaluointijärjestys Muodostetaan FROM-osan relaatio, Valitaan WHERE-osassa luetellut rivit Etsitään ryhmittelyattribuuttien erilaiset arvoyhdelmät; jokaista erilaista yhdistelmää kohden tuloksessa on yksi rivi Lasketaan arvoyhdelmille SELECT-osassa luetellut aggregaattifunktiot SELECT-osassa vain aggregaattifunktioita ja ryhmittelyattribuutteja!
10
Ryhmittelyattribuutit (3)
SELECT ToimittajaId, MIN(Hinta), MAX(Hinta) FROM Tuote GROUP BY ToimittajaId;
11
Ryhmittelyattribuutit (4)
Hae toimittajien nimet sekä kunkin toimittaja toimittamien tuotteiden minimi- ja maksimihinta SELECT Toimittaja.Nimi, MIN(Hinta), MAX(Hinta) FROM Tuote, Toimittaja WHERE ToimittajaId=Toimittaja.Id GROUP BY Toimittaja.Nimi;
12
Ryhmittelyattribuutit (5)
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.