TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Koko: px
Aloita esitys sivulta:

Download "TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences"

Transkriptio

1 TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 10 TU00AA TU10S1E Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences 1

2 SQL: Monen taulun kyselyt ulkoliitos, yhdiste

3 Ulkoliitos: OUTER JOIN Sisäliitoksen tulostaulussa on mukana vain ne rivit joilla valintaehdossa käytettyjen sarakkeiden arvot ovat samat Jos tuloksiin halutaan mukaan myös rivit, joilla ei ole vastinparia toisessa taulussa, käytetään ulkoliitosta Ulkoliitoksen tuottamassa taulussa on sisäisen liitoksen tuloksen lisäksi jokaista paritonta riviä vastaava alku- tai loppuosaltaan NULL-arvoilla täydennetty rivi Ulkoliitos voi olla vasemman-puoleinen (LEFT OUTER JOIN), oikeanpuoleinen (RIGHT OUTER JOIN) tai molemminpuolinen (FULL OUTER JOIN) Hannu Markkanen Metropolia Ammattikorkeakoulu 3

4 ostun osnimi 1 Tietohallinto 2 Talous toim. 3 Tuotanto os. 4 Markkinointi htun enimi snimi ostun 2134 Jukka Virta Mikko Metsä Raili Joki Leo Meri Jukka Järvi NULL 3546 Laura Ranta 1 SELECT * FROM henkilo, osasto htun enimi snimi ostun ostun osnimi 2134 Jukka Virta 3 1 Tietohallinto 2134 Jukka Virta 3 2 Talous toim Jukka Virta 3 3 Tuotanto os Jukka Virta 3 4 Markkinointi 2234 Mikko Metsä 1 1 Tietohallinto 2234 Mikko Metsä 1 2 Talous toim Raili Joki 4 4 Markkinointi 2345 Leo Meri 3 3 Tuotanto os Jukka Järvi NULL 1 Tietohallinto 2884 Jukka Järvi NULL 2 Talous toim Jukka Järvi NULL 3 Tuotanto os Jukka Järvi NULL 4 Markkinoint 3547 Lyly Jokinen 3 htun enimi snimi ostun ostun osnimi 2234 Mikko Metsä 1 1 Tietohallinto SELECT * FROM henkilo INNER JOIN osasto ON henkilo.ostun = osasto.ostun 3546 Laura Ranta 1 1 Tietohallinto 2134 Jukka Virta 3 3 Tuotanto os Leo Meri 3 3 Tuotanto os Lyly Jokinen 3 3 Tuotanto os Raili Joki 4 4 Markkinointi Hannu Markkanen Metropolia Ammattikorkeakoulu 4

5 LEFT OUTER JOIN Relaatiot: osasto (ostun, osnimi) henkilo (htun, enimi, snimi, ostun) Haetaan työntekijöiden nimet osastoittain s.e. myös henkilöt joille ei ole (vielä) määritelty osastoa otetaan mukaan tulostauluun. INNER JOIN SELECT osnimi, snimi, enimi FROM henkilo INNER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tietohallinto Metsä Mikko Tietohallinto Ranta Laura Tuotanto os. Virta Jukka Tuotanto os. Meri Leo Tuotanto os. Jokinen Lyly Markkinointi Joki Raili LEFT OUTER JOIN SELECT osnimi, snimi, enimi FROM henkilo LEFT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tuotanto os. Virta Jukka Tietohallinto Metsä Mikko Markkinointi Joki Raili Tuotanto os. Meri Leo NULL Järvi Jukka Tietohallinto Ranta Laura Tuotanto os. Jokinen Lyly Hannu Markkanen Metropolia Ammattikorkeakoulu 5

6 RIGHT OUTER JOIN Relaatiot: osasto (ostun, osnimi) henkilo (htun, enimi, snimi, ostun) Haetaan työntekijöiden nimet osastoittain s.e. myös osastot joilla ei ole (vielä) työntekijöitä otetaan mukaan tulostauluun. INNER JOIN SELECT osnimi, snimi, enimi FROM henkilo INNER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tietohallinto Metsä Mikko Tietohallinto Ranta Laura Tuotanto os. Virta Jukka Tuotanto os. Meri Leo Tuotanto os. Jokinen Lyly Markkinointi Joki Raili RIGHT OUTER JOIN SELECT osnimi, snimi, enimi FROM henkilo RIGHT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tietohallinto Metsä Mikko Tietohallinto Ranta Laura Talous toim. NULL NULL Tuotanto os. Virta Jukka Tuotanto os. Meri Leo Tuotanto os. Jokinen Lyly Markkinointi Joki Raili Hannu Markkanen Metropolia Ammattikorkeakoulu 6

7 FULL OUTER JOIN MySQL ei tue molemminpuolista ulkoliitosta Sama tulos saavutetaan yhdistämällä LEFT OUTER JOIN ja RIGHT OUTER JOIN kyselyjen tulokset käyttäen UNION-operaatiota UNION on yksi SQL-standardin joukko-operaatioista Muita joukko-operaatioita (tuki eri TKHJ-tuotteissa vaihtelevaa) ovat EXCEPT erotus INTERSECT - leikkaus Hannu Markkanen Metropolia Ammattikorkeakoulu 7

8 Yhdiste (UNION) UNION-operaattorilla voidaan yhdistää rakenteeltaan samanlaisia tauluja Sama määrä sarakkeita Vastaavien sarakkeiden tietotyypit oltava samoja Yhdistetaulussa on riveinä kaikkien yhdistettävien taulujen rivit Yhdiste saadaan aikaan sijoittamalla taulut määrittelevien SELECT-lauseiden väliin avainsana UNION (ei tuplia) tai UNION ALL (kaikki rivit) Hannu Markkanen Metropolia Ammattikorkeakoulu 8

9 LEFT OUTER JOIN SELECT osnimi, snimi, enimi FROM henkilo LEFT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tuotanto os. Virta Jukka Tietohallinto Metsä Mikko Markkinointi Joki Raili Tuotanto os. Meri Leo NULL Järvi Jukka Tietohallinto Ranta Laura Tuotanto os. Jokinen Lyly RIGHT OUTER JOIN SELECT osnimi, snimi, enimi FROM henkilo RIGHT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tietohallinto Metsä Mikko Tietohallinto Ranta Laura Talous toim. NULL NULL Tuotanto os. Virta Jukka Tuotanto os. Meri Leo Tuotanto os. Jokinen Lyly Markkinointi Joki Raili FULL OUTER JOIN UNION-operaation avulla RIGHT OUTER JOIN SELECT osnimi, snimi, enimi FROM henkilo LEFT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun UNION SELECT osnimi, snimi, enimi FROM henkilo RIGHT OUTER JOIN osasto ON henkilo.ostun = osasto.ostun osnimi snimi enimi Tuotanto os. Virta Jukka Tietohallinto Metsä Mikko Markkinointi Joki Raili Tuotanto os. Meri Leo NULL Järvi Jukka Tietohallinto Ranta Laura Tuotanto os. Jokinen Lyly Talous toim. NULL NULL Hannu Markkanen 9

10 UNION esimerkki Jatkuva-arvoisen attribuutin luokittelu Relaatio: henkilo (htun, enimi, snimi, palkka) SELECT 1 AS palkkaluokka, snimi, enimi, palkka FROM henkilo WHERE palkka BETWEEN 0 AND 2700 UNION SELECT 2, snimi, enimi, palkka FROM henkilo WHERE palkka BETWEEN 2700 AND 3000 UNION SELECT 3, snimi, enimi, palkka FROM henkilo WHERE palkka > 3000 ORDER BY palkkaluokka, snimi Huomioi lauseesta myös seuraavat asiat: SELECT <vakio> tuottaa jokaiselle tulostaulun riville ko. vakion arvon Tulostaulun rivien otsikoiksi tulee ensimmäisen SELECT-lauseen mukaiset otsikot (huomaa yllä AS määreen käyttö luokkasarakkeen otsikkona) Yhdisteellä luodun taulun sarakkeita voidaan järjestää normaaliin tapaan ORDER BY lausekkeen avulla. Hannu Markkanen Metropolia Ammattikorkeakoulu 10

11 Alikyselyt Alikyselyä voidaan käyttää kyselyssä monella tapaa, esimerkiksi 1. WHERE-osan valintaehdossa 2. Väliaikaisena tauluna missä tahansa hakulauseen osassa, jossa voi olla taulu (FROM, JOIN) 3. SELECT-osassa tuottamassa riville arvo alikyselyn pitää palauttaa tässä tapauksessa yksi arvo Alikysely sijoitetaan pääkyselyn sisään Alikysely kirjoitetaan sulkeiden sisään ja siten se suoritetaan ennen pääkyselyä Alikyselyjä voi olla useita sisäkkäin Hannu Markkanen Metropolia Ammattikorkeakoulu 11

12 Alikysely WHERE-ehdossa Relaatio: henkilo (htun, enimi, snimi, ostun) Haetaan henkilöt jotka työskentelevät samalla osastolla kuin Jukka Virta SELECT snimi, enimi FROM henkilo WHERE ostun = (SELECT ostun FROM henkilo WHERE enimi = "Jukka" AND snimi = "Virta") Koska pääkyselyn WHERE-ehdossa käytettään =-operaattoria, alikysely voi palauttaa vain yhden rivin (jos tulostaulussa on useampia rivejä, saadaan virheilmoitus) Sama haku voidaan tehdä liitoksen avulla (taululle voi tehdä liitoksen itsensä kanssa): SELECT h1.snimi, h1.enimi FROM henkilo AS h1 INNER JOIN henkilo AS h2 WHERE h1.ostun = h2.ostun AND h2.enimi = "Jukka" AND h2. snimi = "Virta Hannu Markkanen Metropolia Ammattikorkeakoulu 12

13 Alikysely WHERE-ehdossa Relaatiot: henkilo (htun, enimi, snimi, kunta, ostun) Haetaan henkilöt jotka työskentelevät sellaisilla osastoilla joilla on töissä joku turkulainen. SELECT snimi, enimi FROM henkilo WHERE ostun IN (SELECT DISTINCT ostun FROM henkilo WHERE kunta = "TURKU") Alikysely palauttaa useamman osastotunnuksen ja siksi on käytettävä IN operaattoria pääkyselyn WHERE-ehdossa Ja sama liitosta käyttäen: SELECT DISTINCT h1.snimi, h1.enimi FROM henkilo h1 INNER JOIN henkilo h2 WHERE h1.ostun = h2.ostun AND h2.kunta = "TURKU HUOM! AS-määreen voi jättää pois alias-määrittelystä Hannu Markkanen Metropolia Ammattikorkeakoulu 13

14 Alikysely WHERE-ehdossa koostefunktion käyttö Relaatio: henkilo (htun, enimi, snimi, palkka, ostun) Kuka on yrityksen parhaiten palkittu henkilö? SELECT snimi, enimi FROM henkilo WHERE palkka = (SELECT max(palkka) FROM henkilo) Alikysely tarvitaan koska WHERE-ehdossa ei voi käyttää koostefunktiota. Hannu Markkanen Metropolia Ammattikorkeakoulu 14

15 Alikysely väliaikaisena tauluna Tehdään edellisen esimerkin haku käyttämällä alikyselyä liitoksessa väliaikaisena tauluna Relaatio: henkilo (htun, enimi, snimi, palkka, ostun) SELECT snimi, enimi, palkka FROM henkilo INNER JOIN (SELECT MAX(palkka) AS maxpalkka FROM henkilo) AS maxpalkanhaku ON palkka = maxpalkka Huom! Myös välikaiset taulut on aina nimettävä (yllä maxpalkanhaku ), vaikka nimeä ei käytettäisikään missään nimen pois jättäminen aiheuttaa virheilmoituksen Hannu Markkanen Metropolia Ammattikorkeakoulu 15

16 Top n ja Bottom n SELECT... FROM... ORDER BY <sarake> [ DESC ] LIMIT <numero> <numero> määrää listattavien rivien määrän DESC määreen käytöllä voidaan valita joko top tai bottom Esimerkki: henkilo (htun, enimi, snimi, palkka, ostun) Ketkä ovat viisi parhaiten palkattua henkilöä? SELECT snimi, enimi, palkka FROM henkilo ORDER BY palkka DESC LIMIT 5 Hannu Markkanen Metropolia Ammattikorkeakoulu 16

17 Yhteenvetoa relaatiooperaatioista

18 Relaatiomallin matemaattinen tausta Tauluja käsitellään relaatio-operaatioilla, joiden tuloksena on (uusia, mahdollisesti tilapäisiä) tauluja Relaatiomalli perustuu matemaattisen logiikan ja joukko-opin käsitteisiin Relaatiot ovat (matemaattisessa mielessä) joukkoja, joihin voidaan soveltaa tavanomaisia joukko-opin operaatioita Käsittelyn kannalta on tärkeää, että tulosjoukkokin on relaatio eli kaikki operaatiot johtavat tulokseen, jota voidaan edelleen käsitellä samoilla operaatioilla Toisaalta voidaan saada vain sellaisia kyselytuloksia, jotka voidaan muodostaa relaatio-operaatioiden avulla Hannu Markkanen Metropolia Ammattikorkeakoulu 18

19 Relaatio-operaatiot Relaatioiden käsittelyssä erityisen hyödyllisiä operaatiota ovat (SELECT-lauseella toteutettavat) valinta (rivien valinta) projektio (sarakkeiden valinta) relaatioiden (taulujen) liitokset Koska relaatiot ovat joukkoja joukko-opin mielessä, niihin voidaan soveltaa myös joukko-opin operaatioita unioni leikkaus erotus Hannu Markkanen Metropolia Ammattikorkeakoulu 19

20 Valintaoperaatiot Rivien valinta: valinta Projektio (sarakkeiden valinta): projektio Hannu Markkanen Metropolia Ammattikorkeakoulu 20

21 Liitosoperaatiot liitos Hannu Markkanen Metropolia Ammattikorkeakoulu 21

22 Joukko-operaatiot A B Unioni A B: Leikkaus A B: Erotus A \ B: Hannu Markkanen Metropolia Ammattikorkeakoulu 22

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien Monen taulun kyselyt FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: SELECT FROM Tuloksena on taululistassa lueteltujen taulujen rivien karteesinen

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 11 TU00AA48-2002 TU10S1E Hannu Markkanen 22.11.2011 9/10/12 Helsinki Metropolia University of Applied Sciences 1 Indeksit Indeksit Taulun

Lisätiedot

OUTER JOIN se vanha kunnon kaveri

OUTER JOIN se vanha kunnon kaveri OUTER JOIN se vanha kunnon kaveri Ulkoliitoksia on kolmenlaisia Left -> vasemmasta taulusta otetaan ehdot täyttävät rivit ja yhdistetään oikeanpuoleiseen tauluun jos rivi löytyy - nested loop join Right

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 8. Saapumisryhmä: Pasi Ranne /9/13 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 8 XX00AA79-3013 TU12S2 Pasi Ranne 25.9.2013 25/9/13 Helsinki Metropolia University of Applied Sciences 1 Harjoitustyö Harjoitustöiden tilanne

Lisätiedot

Kyselyn yleisrakenne:

Kyselyn yleisrakenne: SQL kysely Kyselyn yleisrakenne: select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta] Kysely tuottaa nimettömän

Lisätiedot

SELECT-lauseen perusmuoto

SELECT-lauseen perusmuoto SQL: Tiedonhaku SELECT-lauseen perusmuoto SELECT FROM WHERE ; määrittää ne sarakkeet, joiden halutaan näkyvän kyselyn vastauksessa sisältää

Lisätiedot

Liitokset - haut useaan tauluun

Liitokset - haut useaan tauluun Liitokset Liitokset - haut useaan tauluun Tavallisin liitos on valintaliitos ehtona =,!=, yhtäläisyysliitos (=) yleisin (vrt. Inner join) taulut liitetään toisiinsa yleensä avaimilla (perus-

Lisätiedot

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto. Opettajien nimet: Opiskelijoiden pääaineet

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto. Opettajien nimet: Opiskelijoiden pääaineet DO NOT PRINT THIS DOCUMENT SQL -valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone varchar(12), PRIMARY KEY (opetunnus) ) ; CREATE

Lisätiedot

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto.

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 SQL- osa Harri Laine 1. SQL-valintaehto. SQL-valintaehto. DO NOT PRINTTHIS DOCUMENT SQL -valintaehto SQL-valintaehto CREATE TABLE opettaja ( opetunnus varchar(12) NOT NULL, nimi varchar(40) NOT NULL, puhelin varchar(12), tyohuone varchar(12), PRIMARY KEY (opetunnus)

Lisätiedot

HELIA TIKO-05 1 (15) ICT03D Tieto ja tiedon varastointi Räty, Virkki 25.10.2006

HELIA TIKO-05 1 (15) ICT03D Tieto ja tiedon varastointi Räty, Virkki 25.10.2006 HELIA TIKO-05 1 (15) SQL / DML 3 Liitos...2 SQL-92:n join operaatio...4 SQL-89:n join operaatio:...5 Karteesinen tulo... 10 Ulkoliitos (Outer join)... 11 Vasemmanpuoleinen ulkoliitos... 12 Oikeanpuoleinen

Lisätiedot

HELIA 1 (14) Outi Virkki Tiedonhallinta

HELIA 1 (14) Outi Virkki Tiedonhallinta HELIA 1 (14) Luento Näkymät... 2 Relaatiotyypit... 2 Taulu - Tallennettu relaatio... 3 Näkymä - Virtuaalirelaatio... 3 Tulosrelaatio - Kyselyn tulos... 3 Otetaulut - Tauluun tallennettu kyselyn tulos...

Lisätiedot

CSE-A1200 Tietokannat

CSE-A1200 Tietokannat CSE-A1200 Tietokannat 22.3.2016 CSE-A1200 Tietokannat 22.3.2016 1 / 35 Oppimistavoitteet: tämän luennon jälkeen Osaat tehdä SQL:llä kyselyitä, jotka käyttävät hyväkseen toisen kyselyn tuloksia (alikyselyt).

Lisätiedot

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät

HAAGA-HELIA Heti-09 1 (12) ICT05 Tiedonhallinta ja Tietokannat O.Virkki Näkymät HAAGA-HELIA Heti-09 1 (12) Näkymät Näkymät... 2 Eri tyyppisiä relaatioita... 2 Taulu - Tallennettu relaatio... 2 Tulosrelaatio - Kyselyn tulos... 2 Näkymä - Virtuaalirelaatio... 2 Näkymien määrittely...

Lisätiedot

HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki

HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki HELIA TIKO-05 1 (17) SQL / DML 4 Alikyselyt...2 Joukko-operaatiot...7 Yhdiste, unioni...8 Leikkaus...9 Erotus... 10 Tietokannan datan muokkaus... 11 Lisäys... 11 Yhden rivin lisääminen... 12 Useamman rivin

Lisätiedot

CSE-A1200 Tietokannat

CSE-A1200 Tietokannat CSE-A1200 Tietokannat 23.2.2016 CSE-A1200 Tietokannat 23.2.2016 1 / 36 Oppimistavoitteet: tämän luennon jälkeen Tunnet SQL:n perusteet ja osaat tehdä yksinkertaisia SQL-kyselyitä, esimerkiksi hakea relaatiosta

Lisätiedot

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet A271117, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin

Lisätiedot

Kyselyt: Lähtökohtana joukko lukuja Laskukaava kertoo miten luvuista lasketaan tulos soveltamalla laskentaoperaatioita

Kyselyt: Lähtökohtana joukko lukuja Laskukaava kertoo miten luvuista lasketaan tulos soveltamalla laskentaoperaatioita Relaatioalgebra Relaatiomalliin liittyy malli tietokannan käsittelystä Tietokannasta pitää pystyä hakemaan tietoa ja toisaalta tietokantaa on ylläpidettävä Tietokannan käsittelyn malli relaatioalgebra

Lisätiedot

Relaatioalgebra. Kyselyt:

Relaatioalgebra. Kyselyt: Relaatioalgebra Relaatiomalliin liittyy malli tietokannan käsittelystä Tietokannasta pitää pystyä hakemaan tietoa ja toisaalta tietokantaa on ylläpidettävä Tietokannan käsittelyn malli relaatioalgebra

Lisätiedot

Relaatioalgebra. Relaatioalgebra. Relaatioalgebra. Relaatioalgebra - erotus (set difference) Kyselyt:

Relaatioalgebra. Relaatioalgebra. Relaatioalgebra. Relaatioalgebra - erotus (set difference) Kyselyt: Relaatiomalliin liittyy malli tietokannan käsittelystä Tietokannasta pitää pystyä hakemaan tietoa ja toisaalta tietokantaa on ylläpidettävä Tietokannan käsittelyn malli relaatioalgebra määrittelee operaatiot,

Lisätiedot

SQL - STRUCTURED QUERY LANGUAGE

SQL - STRUCTURED QUERY LANGUAGE SQL Peruskomentoja SQL - STRUCTURED QUERY LANGUAGE SQL on tietokantojen käsittelyyn kehitetty kieli Esimerkkejä kielellä hoidettavistaa toiminnoista: Tietokannan rakenteen määrittely ja muuttaminen Kyselyt

Lisätiedot

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)] Tällä viikolla Kertaus SQL-asioista jatketaan SQL-tekstifuntio-harjoituksia tehdään pelifirman tietokannasta ER-malli MySQL:llä, tarkastellaan mallin toimivuutta ja korjataan, jos korjattavaa löytyy, tehdään

Lisätiedot

Harjoitustehtävä 1. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. SQL kysely

Harjoitustehtävä 1. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. Harjoitustehtävä 2. SQL kysely Harjoitustehtävä 1 Puutarha Puutarhatunnus omistaja sijainti Vastuualue puutarhatunnus aluenumero maaperä, kosteus valaistus sijainti vastuutonttu Tonttu Tonttutunnus Istutus istutuspäivä paikka_alueella

Lisätiedot

select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta]

select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta] SQL kysely Kyselyn yleisrakenne: select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta] Kysely tuottaa nimettömän

Lisätiedot

Esimerkki. pankkien talletus- ja lainatietokanta: Yhdiste, leikkaus, erotus ym. Leikkaus (intersect) Yhdiste (Union) Erotus (except/minus) Leikkaus

Esimerkki. pankkien talletus- ja lainatietokanta: Yhdiste, leikkaus, erotus ym. Leikkaus (intersect) Yhdiste (Union) Erotus (except/minus) Leikkaus Yhdiste, leikkaus, erotus ym. SQL tarjoaa myös relaatioalgebran operaatiot yhdiste, leikkaus, erotus Näissä operaatioissa taulujen on oltava samarakenteisia, ts. niissä on oltava samantyyppiset vastinsarakkeet.

Lisätiedot

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot) SQL sisältää operaatiot tietokannan sisällön muodostamiseen ja ylläpitoon: insert - uusien rivien vienti tauluun delete - rivien poisto update - rivien muutos 1 Insert lauseella on kaksi muotoa: insert

Lisätiedot

Yhdiste, leikkaus, erotus ym.

Yhdiste, leikkaus, erotus ym. Yhdiste, leikkaus, erotus ym. SQL tarjoaa myös relaatioalgebran operaatiot yhdiste, leikkaus, erotus Näissä operaatioissa taulujen on oltava samarakenteisia, ts. niissä on oltava samantyyppiset vastinsarakkeet.

Lisätiedot

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot DO NOT PRINT THIS DOCUMENT SQL:ssä joukko yhteenvetofunktioita (aggregate function, koostefunktio) AVG keskiarvo MIN pienin arvo (minimi) MAX suurin arvo (maksimi) SUM summa COUNT lukumäärä Yhteenvetofunktioita

Lisätiedot

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot DO NOT PRINT THIS DOCUMENT SQL:ssä joukko yhteenvetofunktioita (aggregate function, koostefunktio) AVG keskiarvo MIN pienin arvo (minimi) MAX suurin arvo (maksimi) SUM summa COUNT lukumäärä Yhteenvetofunktioita

Lisätiedot

4.3.4 SQL kyselyt... 45

4.3.4 SQL kyselyt... 45 TIETOKANTOJEN PERUSTEET, OPETUSMONISTE OSA 3 SQL- KYSELYT Harri Laine 4.3.4 SQL kyselyt... 45 4.3.4.1 Tulostietomäärittely... 46 4.3.4.2 Viittaukset tauluihin ja sarakkeisiin... 49 4.3.4.3 Toistuvat tulosrivit...

Lisätiedot

Helsingin yliopisto/ tktl DO Tietokantojen perusteet, s 2000 Relaatioalgebra 14.9.2000. Harri Laine 1. Relaatioalgebra

Helsingin yliopisto/ tktl DO Tietokantojen perusteet, s 2000 Relaatioalgebra 14.9.2000. Harri Laine 1. Relaatioalgebra DO NOT PRINT THIS DOCUMENT operaatiot, joilla relaatioista voidaan muodostaa uusia relaatioita joukko opin perusoperaatiot yhdiste, erotus, ristitulo, leikkaus erityisiä relaatioalgebran operaatioita projektio,

Lisätiedot

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

TIEDONHALLINNAN PERUSTEET - SYKSY 2013 TIEDONHALLINNAN PERUSTEET - SYKSY 2013 Kurssikoodi: Saapumisryhmä: Luento 4 XX00AA79-3013 TU12S2 Pasi Ranne 11.9.2013 11/9/13 Helsinki Metropolia University of Applied Sciences 1 Relaatiotietokannan suunnitteluprosessin

Lisätiedot

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Helsingin yliopisto, tktl DO Tietokantojen perusteet, kevät 2000 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot DO NOT PRINT THIS DOCUMENT SQL:ssä joukko yhteenvetofunktioita (aggregate function, koostefunktio) AVG keskiarvo MIN pienin arvo (minimi) MAX suurin arvo (maksimi) SUM summa COUNT lukumäärä Yhteenvetofunktioita

Lisätiedot

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX

SQL. ! nykystandardi SQL3 eli SQL'99. ! CREATE TABLE, ALTER TABLE ja DROP TABLE. ! CREATE VIEW ja DROP VIEW. ! CREATE INDEX ja DROP INDEX SQL - perusteet SQL - yleistä Esa Salmikangas InMics SE Oy versio 16.6.2003 SQL - perusteet 1 SQL - perusteet 2 SQL Structured Query Language SQL on tietokantojen käsittelyyn kehitetty kieli yleisimmät

Lisätiedot

CS-A1150 Tietokannat CS-A1150 Tietokannat / 39

CS-A1150 Tietokannat CS-A1150 Tietokannat / 39 CS-A1150 Tietokannat 20.2.2018 CS-A1150 Tietokannat 20.2.2018 1 / 39 Oppimistavoitteet: tämän luennon jälkeen Tunnet SQL:n perusteet ja osaat tehdä yksinkertaisia SQL-kyselyitä, esimerkiksi hakea relaatiosta

Lisätiedot

Koostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

Koostefunktiot. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa: Funktiot Koostefunktiot Viisi standardifunktiota: AVG -- keskiarvo MIN -- pienin arvo MAX -- suurin arvo SUM -- summa COUNT-- lukumäärä Esim. montako henkilöä on henkilo-taulussa: SELECT Count(*) AS Lkm

Lisätiedot

2. Haet työntekijöiden tiedot etunimen mukaan nousevasti järjestettyinä. (ORDER BY) SELECT * FROM employees ORDER BY firstname ASC;

2. Haet työntekijöiden tiedot etunimen mukaan nousevasti järjestettyinä. (ORDER BY) SELECT * FROM employees ORDER BY firstname ASC; Tällä viikolla Kotitehtävien läpikäynti SQL-harjoituksia, osa 1 Jatketaan Pelifirman tietovaraston suunnittelua: tietotyyppien kertaus, taulun luonti ER-kaavioon, taulun luonti kaavion avulla tietokantaan,

Lisätiedot

Helsingin yliopisto Tietojenkäsittelytieteen laitos (H.Laine) Tietokantojen perusteet. Liitteenä: Tiivistelmä SQL-syntaksista

Helsingin yliopisto Tietojenkäsittelytieteen laitos (H.Laine) Tietokantojen perusteet. Liitteenä: Tiivistelmä SQL-syntaksista Helsingin yliopisto Tietojenkäsittelytieteen laitos 26.2.2014 (H.Laine) Tietokantojen perusteet Liitteenä: Tiivistelmä SQL-syntaksista Kirjoita jokaiseen erilliseen vastausarkkiin kurssin nimi, tenttipäivä,

Lisätiedot

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä

Tällä viikolla. Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä Tällä viikolla Kotitehtävien tarkistus Upotettu SQL Indeksi-harjoitus täydennetään pelifirman tietokantamallia SQL-tehtäviä Seuraavissa harjoituksissa käytetään tukkukauppa-kantaa. 1. Hae kaikki toimittajat

Lisätiedot

TIEDONHALLINNAN PERUSTEET - SYKSY 2013

TIEDONHALLINNAN PERUSTEET - SYKSY 2013 TIEDONHALLINNAN PERUSTEET - SYKSY 2013 Kurssikoodi: Saapumisryhmä: Luento 5 XX00AA79-3013 TU12S2 Pasi Ranne 11.9.2013 11/9/13 Helsinki Metropolia University of Applied Sciences 1 Tietokannan normalisoinnin

Lisätiedot

joukko operaatioita, joilla relaatioista voidaan muodostaa uusia relaatioita joukko opin perusoperaatiot yhdiste, erotus, ristitulo, leikkaus

joukko operaatioita, joilla relaatioista voidaan muodostaa uusia relaatioita joukko opin perusoperaatiot yhdiste, erotus, ristitulo, leikkaus DO NOT PRINT THIS DOCUMENT joukko operaatioita, joilla relaatioista voidaan muodostaa uusia relaatioita joukko opin perusoperaatiot yhdiste, erotus, ristitulo, leikkaus erityisiä relaatioalgebran operaatioita

Lisätiedot

Helsingin yliopisto/ tktl D Tietokantojen perusteet, s 2000 Relaatioalgebra. Harri Laine 1. Relaatioalgebra.

Helsingin yliopisto/ tktl D Tietokantojen perusteet, s 2000 Relaatioalgebra. Harri Laine 1. Relaatioalgebra. Tietokantaoperaatiot tiedon haku kyselyt miten märitellään haettava tieto ylläpito-operaatiot lisäys, poisto, muuttaminen Kyselyt: lähtökohtana tietokannan tila joukkona relaatioita kyselyn tuloksena yksi

Lisätiedot

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, 3.5.2007, H.Laine Kirjoita kuhunkin erilliseen vastauspaperiin kurssin nimi, oma nimesi, syntymäaikasi ja nimikirjoituksesi

Lisätiedot

4.1 Yleistä SQL:stä 4.2 SQL-lauseet 4.3 DML: datan hallinta 4.4 DDL: rakenteen määrittäminen 4.5 DCL: valtuuttaminen 4.6 TxCL: tapahtumanhallinta

4.1 Yleistä SQL:stä 4.2 SQL-lauseet 4.3 DML: datan hallinta 4.4 DDL: rakenteen määrittäminen 4.5 DCL: valtuuttaminen 4.6 TxCL: tapahtumanhallinta Luku 4 SQL 4.1 Yleistä SQL:stä 4.2 SQL-lauseet 4.3 DML: datan hallinta 4.4 DDL: rakenteen määrittäminen 4.5 DCL: valtuuttaminen 4.6 TxCL: tapahtumanhallinta ITKA204 kevät 2016 1 4.1 Yleistä SQL:stä Structured

Lisätiedot

Relaation tyhjyyden testaaminen

Relaation tyhjyyden testaaminen Tulostaulun tyhjyyden testaaminen Luettele ne asiakkaat, joilla on sekä talletus että laina -konttorissa. (Leikkaus!) useita mahdollisia toteutustapoja INTERSECT sisäkysely sisäkysely + tulostaulun tyhjyyden

Lisätiedot

Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija Opettajana Mika Sorsa, mika.sorsa@koudata.fi, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija Opintojaksolla: keskitytään relaatiotietokantojen teoriaan ja toimintaan SQL-kieli kyselykielenä

Lisätiedot

VINKKI: Katso Kentät Muistioon -painikkeella, mikä on taulukon nimen oikea kirjoitusasu.

VINKKI: Katso Kentät Muistioon -painikkeella, mikä on taulukon nimen oikea kirjoitusasu. RATKAISUJA PULMAILMOITUKSIIN ASTERIOHJELMIEN SQLKYSELYISSÄ Virhe kyselyssä: Microsoft Jet tietokantamoduuli ei löydä syötetaulukkoa tai kyselyä Laskut. Varmista, että se on luotu ja että kirjoitit nimen

Lisätiedot

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 SQL:n perusteet. Harri Laine 1. SQL tietokantakieli. SQL tietokantakieli

Helsingin yliopisto/tktl Tietokantojen perusteet, s 2007 SQL:n perusteet. Harri Laine 1. SQL tietokantakieli. SQL tietokantakieli SQL tietokantakieli Relaatiomalliin pohjautuvat tietokannat Perustana relaatiomallin mukainen näkemys tietojen rakenteesta ja käsittelystä Tietokantojen rakenteen määrittelyssä ja käsittelymahdollisuuksissa

Lisätiedot

Relaatiotietokantojen perusteista. Harri Laine Helsingin yliopisto

Relaatiotietokantojen perusteista. Harri Laine Helsingin yliopisto Harri Laine Helsingin yliopisto Suosion syy? Yksinkertaisuus vähän käsitteitä helppo hahmottaa Selkeä matemaattinen perusta ei tulkintaongelmia kuten esim. UML:ssä teoria käytäntö kaavio: R(A 1 :D 1, A

Lisätiedot

määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta

määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta SQL tietokantakieli SQL:llä voidaan... määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta näytölle tai tiedostoon sovellusohjelman

Lisätiedot

määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta

määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta SQL tietokantakieli SQL:llä voidaan... määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta näytölle tai tiedostoon sovellusohjelman

Lisätiedot

Kirjoita kuhunkin erilliseen vastauspaperiin kurssin nimi, tentin päiväys, oma nimesi, syntymäaikasi ja nimikirjoituksesi.

Kirjoita kuhunkin erilliseen vastauspaperiin kurssin nimi, tentin päiväys, oma nimesi, syntymäaikasi ja nimikirjoituksesi. Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, kurssikoe 4.3.2015, H. Laine Tehtävien mukana jaetaan sql-syntaksin tiivistelmä. Kirjoita kuhunkin erilliseen vastauspaperiin

Lisätiedot

HELIA 1 (15) Outi Virkki Tiedonhallinta

HELIA 1 (15) Outi Virkki Tiedonhallinta HELIA 1 (15) Luento Suorituskyvyn optimointi... 2 Tiedonhallintajärjestelmän rakenne... 3 Suunnittele... 4 SQL-komentojen viritys... 5 Tekninen ympäristö... 6 Fyysisen tason ratkaisut... 7 Indeksit...

Lisätiedot

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 SQL-perusteet. Harri Laine 1. SQL tietokantakieli

Tietokantojen perusteet k2004helsingin yliopisto/tktl Tietokantojen perusteet, s 2005 SQL-perusteet. Harri Laine 1. SQL tietokantakieli tietokantakieli :llä voidaan... määritellä ja muokata tietokantaa ja sen käyttöoikeuksia virittää tietokannan talletusrakenteita hakea tietoa tietokannasta näytölle tai tiedostoon sovellusohjelman käyttöön

Lisätiedot

SQL:N PERUSTEET MARKKU SUNI

SQL:N PERUSTEET MARKKU SUNI SQL:N PERUSTEET MARKKU SUNI Relaatiomallisen tietokannan käsittely Tietojen saanti, talletus ja päivitys tapahtuu SQL-kielellä Yhtä operaatiota sanotaan kyselyksi (query) Kyselyjä voidaan laittaa peräkkäin

Lisätiedot

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun

Lisätiedot

TIETOKANNAT JOHDANTO

TIETOKANNAT JOHDANTO TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI 2000-2011 Tieto TAUSTAA Yritykselle tiedot ovat tärkeä resurssi päätöksenteon tukena (JIT) varastointi ja käyttö vaativat investointeja vrt. energia (lähde,

Lisätiedot

Harjoitustehtävä 1. Harjoitustehtävän 1 ratkaisu. Harjoitustehtävä 1. Relaatioalgebra -liitokset (join) Liitos

Harjoitustehtävä 1. Harjoitustehtävän 1 ratkaisu. Harjoitustehtävä 1. Relaatioalgebra -liitokset (join) Liitos Harjoitustehtävän 1 ratkaisu Tonttu( tonttutunnus, nimi) Puutarha( puutarhatunnus, omistaja, sijainti ) Vastuualue ( puutarhatunnus->puutarha, aluenumero, maaperä, kosteus, valaistus, sijainti, vastuutonttu

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 2. Pasi Ranne /8/17 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2017 Kurssikoodi: Saapumisryhmä: Luento 2 TX00CN57-3001 TXQ16ICT, TXQ16S1 ja TXQ16PROS Pasi Ranne 28.8.2017 27/8/17 Helsinki Metropolia University of Applied Sciences 1 Oppitunnin

Lisätiedot

SQL-kielen perusteet. Tietokantojen perusteet 4.4.2008

SQL-kielen perusteet. Tietokantojen perusteet 4.4.2008 SQL-kielen perusteet Tietokantojen perusteet 4.4.2008 Sisällys Tietokannan käsittely ja ylläpito SQL tiedonmäärittelykielenä Tietokantataulun ja sen osien määrittely SQL tiedonkäsittelykielenä SQL-kysely

Lisätiedot

Näkymät ja tiedon suojaus

Näkymät ja tiedon suojaus HELIA TIKO-05 1 (23) Näkymät ja tiedon suojaus Näkymät...2 Eri tyyppisiä relaatioita...2 Taulu - Tallennettu relaatio...2 Tulosrelaatio - Kyselyn tulos...2 Työtaulut - Väliaikaisiksi luodut taulut...2

Lisätiedot

2. Käsiteanalyysi ja relaatiomalli

2. Käsiteanalyysi ja relaatiomalli 2. Käsiteanalyysi ja relaatiomalli lehtori Pasi Ranne Metropolia ammattikorkeakoulu E-mail: pasi.ranne@metropolia.fi sivu 1 Tietokannan suunnitteluprosessin osat sivu 2 Käsiteanalyysi ER-mallinnus, tietomallinnus

Lisätiedot

CS-A1150 Tietokannat CS-A1150 Tietokannat / 34

CS-A1150 Tietokannat CS-A1150 Tietokannat / 34 CS-A1150 Tietokannat 7.2.2017 CS-A1150 Tietokannat 7.2.2017 1 / 34 Oppimistavoitteet: tämän luennon jälkeen Tiedät, mitä tarkoitetaan relaatioalgebralla. Osaat tehdä erilaisia kyselyitä relaatioalgebran

Lisätiedot

CS-A1150 Tietokannat CS-A1150 Tietokannat / 34

CS-A1150 Tietokannat CS-A1150 Tietokannat / 34 CS-A1150 Tietokannat 6.2.2018 CS-A1150 Tietokannat 6.2.2018 1 / 34 Oppimistavoitteet: tämän luennon jälkeen Tiedät, mitä tarkoitetaan relaatioalgebralla. Osaat tehdä erilaisia kyselyitä relaatioalgebran

Lisätiedot

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun

Lisätiedot

7.11.2006. Helsingin yliopisto/tktl Kyselykielet, s 2006 Relaatiokalkyylit. Harri Laine 1

7.11.2006. Helsingin yliopisto/tktl Kyselykielet, s 2006 Relaatiokalkyylit. Harri Laine 1 perusteita - relaatiokalkyylit perusteita - relaatiokalkyylit Relaatioalgebra on luonteeltaan proseduraalinen tapa käsitellä tietoa. Tiedon haetaan sarjaksi järjestettyjen operaatioiden avulla. Edellä

Lisätiedot

Algebralliset tietotyypit ym. TIEA341 Funktio ohjelmointi 1 Syksy 2005

Algebralliset tietotyypit ym. TIEA341 Funktio ohjelmointi 1 Syksy 2005 Algebralliset tietotyypit ym. TIEA341 Funktio ohjelmointi 1 Syksy 2005 Tällä luennolla Algebralliset tietotyypit Hahmonsovitus (pattern matching) Primitiivirekursio Esimerkkinä binäärinen hakupuu Muistattehan...

Lisätiedot

D B. Kyselyjen käsittely ja optimointi. Kyselyn käsittelyn vaiheet:

D B. Kyselyjen käsittely ja optimointi. Kyselyn käsittelyn vaiheet: Kyselyjen käsittely ja optimointi Kyselyn käsittelyn vaiheet: TKHJ ottaa vastaan kyselyn asiakasohjelmalta Kysely selataan ja jäsennetään tarkistetaan kyselyn rakenteellinen oikeellisuus Jäsennetty kysely

Lisätiedot

Metropolia ammattikorkeakoulu TU00BS : ICT-teknologiaosaaminen Tuntitehtävät 5 Pasi Ranne

Metropolia ammattikorkeakoulu TU00BS : ICT-teknologiaosaaminen Tuntitehtävät 5 Pasi Ranne Osoitteessa http://users.metropolia.fi/~pasitr/2015-2016/tu00bs69-3001/tt/05/kanta ovat taulujen Henk (kuva A), Proj (kuva B) ja Prhe (kuva C) luontilauseet ja sisällön lisäyslauseet. Tee phpmyadmin-ohjelmalla

Lisätiedot

Tietokannat II -kurssin harjoitustyö

Tietokannat II -kurssin harjoitustyö Tietokannat II -kurssin harjoitustyö Jyri Lehtonen (72039), jkoleh@utu.fi Azad Hajipour (72187), azhaji@utu.fi 10.6.2007 Sisältö 1. Tietokannan kuvaus... 1 1.1 Tietokannan rakenne... 1 1.2 Relaatiokaava

Lisätiedot

Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC)

Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC) HAAGA-HELIA ICT1TA006: Ohjelmointi 1 /5 Johdanto Javaan ja tietokantojen käsittelyyn Java Database Connectivity (JDBC) (Lähteet: Oracle java jdbc Tutorial, Arvo Lipitsäinen: Tietokannan käsittely JDBC:n

Lisätiedot

CS-A1150 Tietokannat CSE-A1150 Tietokannat / 39

CS-A1150 Tietokannat CSE-A1150 Tietokannat / 39 CS-A1150 Tietokannat 9.5.2017 CSE-A1150 Tietokannat 9.5.2017 1 / 39 Kertausluento Tällä luennolla kerrataan lyhyesti tenttivaatimuksissa esitettyjä asioita ja samalla tarkastellaan sitä, mitä niistä voidaan

Lisätiedot

Paikkatiedon hallinta ja analyysi 3. Paikkatietomallit ja kyselyt

Paikkatiedon hallinta ja analyysi 3. Paikkatietomallit ja kyselyt HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Paikkatiedon hallinta ja analyysi 3. Paikkatietomallit ja kyselyt Antti Leino 21. maaliskuuta 2005 Tietojenkäsittelytieteen

Lisätiedot

TIETOKANTOJEN PERUSTEET MARKKU SUNI

TIETOKANTOJEN PERUSTEET MARKKU SUNI TIETOKANTOJEN PERUSTEET MARKKU SUNI SQL - KIELI TIETOJEN MUOKKAUS MARKKU SUNI Tarkastellaan tauluissa olevien tietojen muokkausta muokkauskäskyjä: INSERT UPDATE DELETE Kysymys kuuluu: Voiko tietoja muokata

Lisätiedot

TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences

TIEDONHALLINTA - SYKSY Luento 7. Pasi Ranne /10/17 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2017 Kurssikoodi: Saapumisryhmä: Luento 7 TX00CN57-3001 TXQ16ICT, TXQ16S1 ja TXQ16PROS Pasi Ranne 02.10.2017 1/10/17 Helsinki Metropolia University of Applied Sciences 1 Tietokannan

Lisätiedot

Harjoitustyö. CSE-A1200 Tietokannat! Jasse Lahdenperä! 345396! killedwhale@kapsi.fi! Henri Nurmi! 345545! henri.nurmi@kapsi.fi!

Harjoitustyö. CSE-A1200 Tietokannat! Jasse Lahdenperä! 345396! killedwhale@kapsi.fi! Henri Nurmi! 345545! henri.nurmi@kapsi.fi! Harjoitustyö CSE-A1200 Tietokannat Jasse Lahdenperä 345396 killedwhale@kapsi.fi Henri Nurmi 345545 henri.nurmi@kapsi.fi 1 Ensimmäisen vaiheen ratkaisu ER-Kaavio 2 Relaatiomalli: Loanable(Id, MaximumLoanTime)

Lisätiedot

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); Tietokannat SQL-peruskomentojen pikaopas CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi); INSERT INTO table VALUES(val1,val2,... ); Lisää tauluun

Lisätiedot

Opiskeluoikeuksien maaran tiedonkeruu

Opiskeluoikeuksien maaran tiedonkeruu Opiskeluoikeuksien maaran tiedonkeruu Määrittely Opinto-oikeuksista tarvitaan seuraavat tiedot: Tieto jokaisesta yksittäisestä opinto-oikeudesta ja kytkentä niistä opinto-oikeuksista jotka ovat samalla

Lisätiedot

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia Tällä viikolla Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia 1.) Mainitse tietokonepelistä (kuvitteellisesta tai todellisesta) esimerkkitilanteita,

Lisätiedot

HELIA SQL-harjoituksia 1(1) atk72d Versiopvm: 24.3.2003

HELIA SQL-harjoituksia 1(1) atk72d Versiopvm: 24.3.2003 HELIA SQL-harjoituksia 1(1) SQL-HARJOITUKSIA Takkulan taulut Takkulan opiston relaatiotietokannan rakenne on seuraava: OPPILAS oppilasnro etunimi sukunimi syntpvm AINE lahiosoite ainenro postinro kurssikerta

Lisätiedot

Relaatiomalli ja -tietokanta

Relaatiomalli ja -tietokanta Relaatiomalli ja -tietokanta > Edgar. F. (Ted) Codd, IBM, 1969 < A Relational Model of Data for Large Shared Data Banks Communications of the ACM, Vol. 13, No. 6, June 1970, pp. 377-387. > 70-luvun lopulla

Lisätiedot

Kuva 7.2 vastaustaulu harjoitukseen 7.2

Kuva 7.2 vastaustaulu harjoitukseen 7.2 Harjoitus 7. Lataa tiedosto http://users.metropolia.fi/~pasitr/opas/ran13b/data/ran13b.zip levylle Z: ja pura se. Kun olet tehnyt kaikki seuraavat 17 tehtävää palauta Tuubiin harjoituksen 7 vastauksena

Lisätiedot

SQL:N PERUSTEET MARKKU SUNI

SQL:N PERUSTEET MARKKU SUNI SQL:N PERUSTEET MARKKU SUNI Vertailuoperaattorit Vertailuoperaattorit vertailevat lausekkeiden arvoja Vertailu palauttaa jonkin kolmesta arvosta: TRUE Tosi FALSE Falski, väärä NULL Tuntematon JOS vertailuehtona

Lisätiedot

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1

Tietokannan hallinta. Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta Kevät 2004 Jan Lindström R&G Chapter 1 Tietokannan hallinta 1. Johdanto (käsitteitä) 2. Tietokannan talletusrakenteet 3. Tietokannan hakemistorakenteet 4. Kyselyiden käsittely ja optimointi

Lisätiedot

Laajennettu relaatiomalli ERDM ja suoraviittauksinen kyselykieli NSQL. Mika Niemelä

Laajennettu relaatiomalli ERDM ja suoraviittauksinen kyselykieli NSQL. Mika Niemelä Laajennettu relaatiomalli ERDM ja suoraviittauksinen kyselykieli NSQL Mika Niemelä Tampereen yliopisto Tietojenkäsittelyopin laitos Pro gradu tutkielma 7.4.2003 Tampereen yliopisto Tietojenkäsittelyopin

Lisätiedot

KOOSTEFUNKTIOT. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa:

KOOSTEFUNKTIOT. Viisi standardifunktiota: Esim. montako henkilöä on henkilo-taulussa: FUNKTIOT Viisi standardifunktiota: AVG -- keskiarvo MIN -- pienin arvo MAX -- suurin arvo SUM -- summa COUNT -- lukumäärä KOOSTEFUNKTIOT Esim. montako henkilöä on henkilo-taulussa: SELECT Count(*) AS Lkm

Lisätiedot

Vain valitut kentät: SELECT Päivämäärä, Laskutusnimi, [ale mk], Loppusumma FROM Laskuotsikot

Vain valitut kentät: SELECT Päivämäärä, Laskutusnimi, [ale mk], Loppusumma FROM Laskuotsikot SQL-ESIMERKKILAUSEITA yksinkertaisesta monimutkaiseen, esim. itseopiskelua varten ASTERI LASKUTUS Kaikkien laskuotsikoiden kaikki kentät: SELECT * FROM Laskuotsikot Vain valitut kentät: SELECT Päivämäärä,

Lisätiedot

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi

Helsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi Miksi optimoidaan Relaatiotietokannan kyselyt esitetään käytännössä SQLkielellä. Kieli määrittää halutun tuloksen, ei sitä miten tulos muodostetaan (deklaratiivinen kyselykieli) Tietokannan käsittelyoperaatiot

Lisätiedot

Hohde Consulting 2004

Hohde Consulting 2004 Luento 5: XQuery AS-0.110 XML-kuvauskielten perusteet Janne Kalliola XQuery XQuery uudet funktiot sekvenssit muuttujat Iterointi järjestys suodatus järjestäminen Ehtorakenteet Muita toimintoja www.hohde.com

Lisätiedot

ASTERI-OHJELMIEN SQL-ERIKOISKURSSI LUENTOKALVOT

ASTERI-OHJELMIEN SQL-ERIKOISKURSSI LUENTOKALVOT ASTERI-OHJELMIEN SQL-ERIKOISKURSSI LUENTOKALVOT MIKSI SQL? - voit tehdä rajattomasti erilaisia tilastoja, raportteja ja tulosteita juuri omaan tarpeeseesi, esim. o yritysjohdon tarpeisiin o myyntitilastot

Lisätiedot

Yleinen SQL. Yleinen SQL. SQL:n kehitys

Yleinen SQL. Yleinen SQL. SQL:n kehitys .ppt Yleinen sivu 1 Yleinen :n kehitys sivu 2... kokeiluja 1970 E F Codd: A Relational Model of Data for Large Shared Data Banks - Relational View on Data, relaatioalgebra, normalisointi 1974-79 Berkeley

Lisätiedot

Muita tietokantaobjekteja. Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto

Muita tietokantaobjekteja. Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto Muita tietokantaobjekteja Näkymät, synonyymit, indeksointi, valtuudet ja systeemihakemisto Näkymät Näkymä (view) on looginen näyte tietokannan tauluista tai näkymistä Näkymä ei voi sisältää SELECT INTO,

Lisätiedot

MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO

MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO MUITA TIETOKANTAOBJEKTEJA NÄKYMÄT, SYNONYYMIT, INDEKSOINTI, VALTUUDET JA SYSTEEMIHAKEMISTO NÄKYMÄT Näkymä (view) on looginen näyte tietokannan tauluista tai näkymistä Näkymä ei voi sisältää SELECT INTO,

Lisätiedot

5 SQL TIETOKANTAKIELI...33

5 SQL TIETOKANTAKIELI...33 5 SQL TIETOKANTAKIELI...33 5.1 SQL TIETOKANTA...34 5.2 SQL:N KIRJOITUSASU...36 5.3 SQL MÄÄRITTELYKIELENÄ...36 5.3.1 Käyttäjät...36 5.3.2 Oikeudet...37 5.3.3 Kaaviot ja taulut...38 5.3.4 Taulujen rakenteen

Lisätiedot

D B. Kyselypuut ja ekvivalenssi

D B. Kyselypuut ja ekvivalenssi Kyselypuut ja ekvivalenssi Sisäisessä esityksessä kyselyt esitetään kyselypuuna lehdissä taulut juuressa lopputulos välisolmuina suoritettavat operaatiot s=select p=project j=join p (teos.nimi, kirjanro)

Lisätiedot

HELIA TIKO-05 1 (22) Tieto ja tiedon varastointi E.Räty, O.Virkki 12.10.2006

HELIA TIKO-05 1 (22) Tieto ja tiedon varastointi E.Räty, O.Virkki 12.10.2006 HELIA TIKO-05 1 (22) SQL / DML SQL / DML...2 Tiedon haku eli -lause...4 Distinct-määre...7 Lasketut sarakkeet...8 Sarakkeen uudelleen nimeäminen...9 SQL:n funktioita... 10 Merkkijonofunktiot... 10 Päivämääräfunktiot...

Lisätiedot

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, kurssikoe 29.2.2012 (vastauksia) Liitteenä on tiivistelmä SQL-syntaksista Kirjoita jokaiseen erilliseen vastauspaperiin kurssin

Lisätiedot

Talousmatematiikan perusteet

Talousmatematiikan perusteet kevät 219 / orms.13 Talousmatematiikan perusteet 9. harjoitus, viikko 12 (18.3. 22.3.219) L Ma 1 12 A22 R5 Ti 14 16 F453 R1 Ma 12 14 F453 L To 8 1 A22 R2 Ma 16 18 F453 R6 Pe 12 14 F14 R3 Ti 8 1 F425 R7

Lisätiedot

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki 19.1.2010. Relaatiomalli

HAAGA-HELIA heti09 1 (27) ICT05 Tiedonhallinta ja tietokannat O.Virkki 19.1.2010. Relaatiomalli HAAGA-HELIA heti09 1 (27) Relaatiomalli Relaatiomalli... 2 Peruskäsitteet... 3 Relaatio... 5 Attribuutti ja arvojoukko... 6 Monikko... 7 Säännöt... 8 Arvojoukkoeheyssääntö... 8 Pääavain ja yksilön eheyssääntö...

Lisätiedot

TIETOKANTOJEN PERUSTEET MARKKU SUNI

TIETOKANTOJEN PERUSTEET MARKKU SUNI TIETOKANTOJEN PERUSTEET MARKKU SUNI SQL - KIELI HIERARKIAAKO ELI ALIKYSELYT MARKKU SUNI Periaatteessa Alikyselyt ovat upotettuja SELECT-käskyjä Kysymys kuuluu: Upottavatko upotetut SELECT-käskyt SQL-ohjelmani?

Lisätiedot

Kyselyiden käsittely. R & G Chapter Tietokannan hallinta, kevät 2006, Jan 1

Kyselyiden käsittely. R & G Chapter Tietokannan hallinta, kevät 2006, Jan 1 Kyselyiden käsittely R & G Chapter 12 15 16.02.06 Tietokannan hallinta, kevät 2006, Jan 1 Kyselyjen käsittely ja optimointi Kyselyn käsittelyn vaiheet: TKHJ ottaa vastaan kyselyn asiakasohjelmalta Kysely

Lisätiedot