Tulosta

CASE -kuvaus

Tietokanta

SQL -kyselyt

Yleistä kyselyistä

Sarakkeiden valinta

Rivien valinta

Tarkka vastaavuus

Vertailuoperaattorit

Lajittelu

AND

BETWEEN - AND

OR

IN

LIKE

NOT

Tyhjä merkkijono

Boolen algebra

Sulutus

Päivämääräfunktiot

Liitokset

Perinteinen liitos

Sisäliitos

Laskenta

Sarakkeilla

Ryhmillä

Muut

Alikyselyt

Kyselyiden yhdistäminen

Sisäliitos (Inner Join)

SQL-92 standardissa otettiin käyttöön sisäliitokset, joiden avulla kyselyssä voidaan käyttää useampaa kuin yhtä taulua. Sisäliitos vastaa siis perinteiseiä kyselyitä.

Syntaksi:
SELECT kenttäluettelo
FROM taulu1 INNER JOIN taulu2 ON taulu1.perusvain = taulu2.viiteavain;

Esimerkki:
kysely hakee Block-taulusta blokin laadun ja numeron ja Quality-taulusta laadun nimen ja kuutiohinnan
SELECT B.len, B.hei, B.wid, B.qualityID, Q.name, Q.cbmprice
FROM Quality Q INNER JOIN Block B ON Q.qualityID=B.qualityID;

kysely hakee yrityksen LT valmistamat tuotteet tammikuussa 2009
SELECT C.companyID, B.*
FROM Company C  INNER JOIN Quality Qu  ON C.companyID=Qu.companyID
                                 INNER JOIN Block B      ON  Qu.qualityID = B.qualityID
WHERE C.companyID = "LT" AND   YEAR(B.dateproduced) = 2009 AND MONTH(B.dateproduced) = 1

Kysely hakee louhimoiden (Quarry) valmistamat blokit tammikuussa 2009
SELECT Q.quarryID, B.*
FROM    Quarry Q INNER JOIN Quality Qu ON Q.quarryID = Qu.quarryID
                              INNER JOIN Block B      ON Qu.qualityID = B.qualityID
WHERE  YEAR(B.dateproduced) = 2009 AND MONTH(B.dateproduced) = 1;

Huom. standarsi SQL -käyttää sulkuja sisäliitoksissa!

 

Juha Kiukas - juha@kiukas.fi - 040 551 0711