SELECT

SQL:ää käytetään eniten kyselyjen tekemiseen. Käytetyin käsky on siis kyselylause SELECT, jonka syntaksi on seuraavanlainen:

SELECT<lista haettavista kentistä>FROM<mistä taulu(i)sta haetaan>
WHERE<mitkä rivit haetaan>
GROUP BY<miten ryhmitellään>
HAVING<mitkä ryhmittelyn tulosriveistä haetaan>
ORDER BY<miten lajitellaan>

Käskyssä on aina oltava osat SELECT ja FROM, muut osat ovat valinnaisia. Järjestyksen on oltava ylläesitetty.

SELECT <lista haettavista kentistä> on pilkuilla eroteltu lista kenttien nimistä. Tulosjoukossa kentät tulevat siinä järjestyksessä kuin ne on lueteltu. FROM <mistä taulu(i)sta haetaan> on pilkuilla eroteltu lista taulujen nimistä.

Tyypillisessä yksinkertaisessa kyselyssä haettaisiin esim. lista kaikkien opiskelijoiden etunimistä ja sukunimistä:

SELECT etunimi, sukunimi FROM Opiskelija 
ETUNIMI SUKUNIMI 
---------- ------------
Tommi Lahtonen 
Petri Heinonen 
Teemu Tieteilijä 
Taina Tieteilijä 
Kaisa Kielinero 
Keijo Kirjailija 
Kimmo Kasvattaja 
Olli Opettaja 

8 record(s) selected.

Jos halutaan hakea kaikki kentät, niin lista voidaan korvata *-merkillä.

Haetaan kaikkien opiskelijoiden kaikki tiedot:

SELECT * FROM Opiskelija 

HETU SAHKOPOSTI ETUNIMI SUKUNIMI LAHIOSOITE PNRO ALOITUS LAITOS

----------- -------------------- ------- ------------ ------------ ----- ------- -----------

111111-111P tommi.j.lahtonen@jyu.fi Tommi Lahtonen TNT 9 Ö 666 40740 1995 1

121212-112P peheinon@mit.jyu.fi Petri Heinonen Agora 40351 1992 1

230173-000L foo@bar.invalid Teemu Tieteilijä TNT 9 Y 123 40740 1999 2

010101-011P bar@foo.invalid Taina Tieteilijä TNT 9 Y 124 40740 1996 2

111112-111P barfoo@bar.invalid Kaisa Kielinero Keskusta 40700 1995 3

111113-111P barfoo@bar.invalid Keijo Kirjailija Keskusta 40700 1997 4

111114-111P Kimmo Kasvattaja TNT 9 A 000 40740 1998 5

111115-111P Olli Opettaja Keskusta 40700 2000 6

8 record(s) selected.

Jos haetaan tietoja useammasta kuin yhdestä taulusta ja tauluissa on samannimisiä sarakkeita niin haettava kenttä on yksilöitävä ilmoittamalla, minkä taulun kentästä on kyse. Tämä tapahtuu kirjoittamalla taulun nimi ja piste (.) kentän nimen eteen, kuten Opiskelija.sukunimi. Useamman taulun käsittävistä hakulauseista kerrotaan enemmän myöhemmissä kappaleissa

Haetaan kaikkien opiskelijoiden sukunimet ja etunimet:

SELECT Opiskelija.Sukunimi, Opiskelija.Etunimi

FROM Opiskelija

SUKUNIMI ETUNIMI

------------ ----------

Lahtonen Tommi 

Heinonen Petri

Tieteilijä Teemu

Tieteilijä Taina

Kielinero Kaisa

Kirjailija Keijo

Kasvattaja Kimmo

Opettaja Olli

8 record(s) selected.

Käyttäjien kommentit

Kommentoi tätä sivua Lisää uusi kommentti
Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
http://appro.mit.jyu.fi/doc/tiedonhallinta/sql/dml/index1.html
© Antti Ekonoja (anjoekon@jyu.fi) <http://users.jyu.fi/~anjoekon/>
Tommi Lahtonen (tommi.j.lahtonen@jyu.fi) <http://hazor.iki.fi/>
Jukka Mäntylä (jmantyla@iki.fi) <http://www.iki.fi/jmantyla/>
2004-11-05 15:23:47
Informaatioteknologia - Jyväskylän yliopiston IT-tiedekunta ja avoin yliopisto