SQL
SQL KOULUTUSTA VUONNA 2025!
-
SQL koulutus
-
MySQL koulutus
-
Microsoft SQL Server ylläpto koulutus
-
Microsoft SQL Server - kyselyjen optimointi ja tuning koulutus
-
Microsoft Access koulutus
Kurssit saatavilla kautta Suomen. Tule ja varaa oma koulutustapahtumasi heti! Koulutuksen järjestää asiantuntijasi Koulutus- ja konsultointipalvelu KK Mediat.
SQL:n WHERE- ja HAVING-ehtolausekkeet
Useimmissa SQL-kyselyissä tärkein osa kyselyä ovat ehtolausekkeet. Ehtolausekkeet määrittelevät, mitkä rivit valitaan mukaan kyselyyn ja mitkä jätetään pois.
Kysely ilman ehtoja kohdistuu kaikkeen dataan — eli se hakee kaikki rivit.
Ehtojen avulla rajataan ja suodatetaan kyselyn vaikutusaluetta. Tällöin kysely muuttuu muotoon "hae vain ne rivit, joissa seuraavat ehdot toteutuvat".
Jokainen ehto rakentuu lausekkeista, jotka palauttavat arvoja, sekä niitä vertailevista rakenteista, jotka testaavat, täyttääkö kukin tietue annetut kriteerit.
SQL-lausekkeet: miten muodostetaan vertailukelpoisia arvoja
Lauseke on SQL:ssä mikä tahansa ilmaus, joka palauttaa arvon.
Itse asiassa lähes kaikki, mitä esimerkiksi SELECT
- tai FROM
-avainsanan jälkeen kirjoitetaan, on lauseke.
Seuraavassa esimerkissä Id, Merkki ja Malli ovat kaikki omia lausekkeitaan:
SELECT Id, Merkki, Malli FROM Autot
Lauseke voi olla yksinkertainen, kuten sarakkeen nimi (Hinta), laskettu arvo kuten (Hinta * 0.9), tai vaikka tekstikenttä. Yhteistä kaikille on, että lauseke palauttaa arvon, jota voidaan käyttää edelleen – esimerkiksi vertailussa.
SQL WHERE-ehto: miten rajaat kyselyn tuloksia
Ehdot määrittelevät, mitkä tietueet otetaan mukaan kyselyyn — ja mitkä jätetään pois. Ne toimivat suodattimena, joka karsii pois epäolennaisen.
Ehtolauseen perussyntaksi on yksinkertainen, ja sen voi upottaa osaksi SELECT
, UPDATE
, DELETE
-kyselyitä:
SELECT <lauseet> WHERE <Ehto>
UPDATE <lauseet> WHERE <Ehto>
DELETE FROM <lauseet> WHERE <Ehto>
Ehto voi olla lyhyt ja selkeä perusvertailu, rakentua useista loogisista ehdoista, tai käyttää toista tietojoukkoa rajaavana ehtona. WHERE-ehdon tarkoitus on sen tyypistä riippumatta aina sama: rajata kyselyn vaikutusaluetta tietuetasolla.
SQL:n HAVING-lause: ehtoja ryhmitellyille arvoille
Siinä missä WHERE suodattaa rivejä ennen ryhmittelyä, HAVING-ehto suodattaa ryhmiteltyjä tuloksia eli GROUP BY -lauseen jälkeen muodostettuja ryhmiä. Ilman ryhmittelyä HAVING ei yleensä tee mitään.
HAVING-ehdon perussyntaksi on:
SELECT <lauseet> WHERE <Ehto> GROUP BY <ryhmittely> HAVING <ehto>
Artikkelin Seuraavissa osissa tutustumme tarkemmin eri operaattoreihin, joita voidaan käyttää SQL:n ehtolausekkeissa, ja tarjoamme käytännön esimerkkejä niiden käytöstä.