Tietovarastot ja SQL Virpi Myllylahti

Koko: px
Aloita esitys sivulta:

Download "Tietovarastot ja SQL Virpi Myllylahti"

Transkriptio

1 Tietovarastot ja SQL Virpi Myllylahti Helsingissä 15. maaliskuuta 2003 Relaatiokannat nyt seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

2 Sisällysluettelo 1 JOHDANTO SQL JA TIETOVARASTOT SQL TIETOVARASTOT SQL99 JA TIETOVARASTOT GROUP BY -LAAJENNUS SQL3:SSA GROUP BY GROUP BY GROUPING SETS GROUP BY ROLLUP GROUP BY CUBE YHTEENVETO LÄHTEET

3 1 Johdanto Tietovarastot on voimakkaasti kasvava sovellusalue. Suuria tietovarastoja käytetään valtavan tietojoukon keräämiseen, tehokkaisiin kyselyihin, tietojen analysointiin ja raportointiin. Tietovarastot toimivat päätöksenteko- ja johtamisprosessin tukena. Tässä työssä käsittelen vuoden 1999 SQL3-standardin laajennuksia, jotka mahdollistavat tietovarastotoimintojen toteuttamisen SQL:llä. Luvussa 2 esittelen ensin lyhyesti aiheeni kannalta keskeiset käsitteet ja problematiikan. Kappaleessa 3 esittelen SQL3-standardin tarjoamat laajennukset GROUP BY-ryhmittelymääreeseen. GROUPING SETS -määrettä käytetään tulosjoukon ryhmittelyyn usean ryhmittelytekijän suhteen. ROLLUP-määreellä (suom. karkeistus) poraudutaan kyselyn tulosjoukkoon ja muodostetaan välisummauksia tulosjoukon riveistä. CUBE määreellä saadaan aikaan moniuloitteisia tulosjoukkoja. 2 SQL ja tietovarastot 2.1 SQL SQL (Structured Query Language) on IBM:n tutkimuskeskuksen kehittämä relaatiotietokantojen käsittelyyn kehitetty kyselykieli, jonka ensimmäinen standardi (SQL-86 tai SQL1) on vuodelta Standardia on kehitetty ja laajennettu ensin vuonna 1992 (SQL-92 tai SQL2) ja viimeksi vuonna 1999 (SQL-99 tai SQL3) [ElmNa]. SQL3- standardiin lisättiin vuonna 1999 mm. oliopiirteitä, joita on tarkemmin käsitelty Relaatiokannat nyt seminaarin muissa seminaaritöissä. Tässä työssä käytän vuoden 1999 SQL-standardista nimeä SQL3. SQL on tietokantakieli, jolla luodaan ja muokataan objekteja (esimerkiksi taulut, indeksit ja funktiot) sekä kysellään ja päivitetään (insert, delete, update) kannassa olevaa tietoa. SQL-kieli sisältää myös tietokannan näkymien, tietokannan käyttöoikeuksien ja viiteeheyksien määrittelyn ja transaktion hallinnan [ElmNa]. SQL:ssä ei ole tietovarastoissa tarvittavia raportointiominaisuuksia. 2

4 2.2 Tietovarastot Tietovarasto (a data warehouse) on yksi, täydellinen ja yhdenmukainen tiedon varastointipaikka. Tietovarastoon ladataan tietoa erilaisista lähteistä ja erilaisilta alustoilta. Talletettava tieto voi olla hyvin monenmuotoista. Tietovaraston tarkoituksena on, että peruskäyttäjät ymmärtävät tietovarastoon kerätyn tiedon helposti ja voivat käyttää tietoja perusliiketoiminnassa hyödyksi monella eri tavalla [Devlin]. Tietovarastona olevaa tietoa ei yleensä päivitetä, vaan sinne talletetaan jatkuvasti uutta tietoa. Talletettua tietoa säilytetään tietty aika, jonka jälkeen tiedot siirretään esimerkiksi nauhalle tai toiseen järjestelmään tai tiedot tuhotaan. Koska tietoja säilytetään usein tietovarastoissa pitkiäkin aikoja, tietovaraston koko kasvaa helposti hyvin suureksi [ElmNa]. Tietovarastoa käytetään talletetun tiedon analysointiin, raportointiin ja muokkaamiseen. Tietoa jalostetaan tekemällä tiedosta erilaisia summauksia ja poimintoja. Analyyseja ja raportteja käytetään erityisesti pätöksenteko- ja johtamisprosessin tukeminen. Tietovarastomarkkinat ovat kasvaneet voimakkaasti 1990-luvun loppupuolelta lähtien. Talletettujen tietojen määrä on kasvanut valtavasti sekä analysointivälineet että tekniikat ovat kehittyneet. Kaupalliset sovellukset ovat tarjonneet erilaisia välineitä yritysten tietovarastointitarpeisiin ja sekä SQL-standardia että relaatiotietokantoja on kehitetty vastaavasti [ElmNa]. 2.3 SQL99 ja tietovarastot SQL on kehitetty erityisesti kyselytarpeita varten, eikä kieli sisällä tietovarastojen analysointi- ja raportointitarpeita vastaavia toimintoja. SQL ei sovellu esimerkiksi tietojen muokkaukseen tai yhdistelyyn eikä suurien tietomäärien tehokkaaseen kyselyyn [Devlin]. SQL:llä ei ole mahdollista käsitellä kannassa olevaa tietoa moniulotteisesti eikä kyseltyyn tietoon voida porautua. Monet tietovarastotoiminnoissa käytetyt monimutkaiset kyselyt on vaikeita toteuttaa tehokkaasti SQL:llä. 3

5 SQL3-versiossa SQL:ää kehitettiin tietojen analysointiin ja summauksiin paremmin soveltuvaksi. SQL:n tietojen ryhmittelyyn käytettyä GROUP BY-lauseketta laajennettiin GROUPING SETS-, ROLLUP- ja CUBE-määreillä. Uusilla määreillä voidaan toteuttaa porautuvia raportteja, histogrammeja, välisummien (sub totals) ja loppusummien (grand total) laskemista sekä ristiinviittauksia (gross tabulation) [GRAY, 34]. Käsittelen GROUP BY - toimintoa laajennuksineen seuraavassa luvussa. 3 GROUP BY -laajennus SQL3:ssa 3.1 GROUP BY SQL-standardissa on viisi summausfunktiota (an aggregate function), joita käytetään kyselyssä tulosjoukon rivien muodostamiseen: COUNT(): palauttaa lukumäärän SUM(): palauttaa summa-arvon MIN(): palauttaa pienimmän arvon MAX():palauttaa suurimman arvon AVG(): palauttaa keskiarvon Kannasta kyseltyä tietoa halutaan usein ryhmitellä eri tavoilla. Summausfunktioiden lisäksi kyselyssä käytetään tällöin ryhmittelyattribuutteja, joilla tulosjoukon rivejä jaetaan ali-ryhmiin. Ryhmittelyattribuuteilla voidaan esimerkiksi kysellä yrityksen työntekijöiden keskipalkkaa osastoittain tai tietyn tavaran myynnin kehitystä kuukausittain. [ElmNa] GROUP BY on SQL-standardissa käytetty ryhmittelymääre, jolla kyselyssä ryhmitellään tulosjoukkoa taulun sarakkeiden suhteen. GROUP BY-määreen ryhmittelyattribuuttien on esiinnyttävä myös lauseen SELECT-osassa [ElmNa]. GROUP BY määreen sisältämän SQL-kyselyn syntaksi on seuraava: SELECT Column1, Column2, SUM (Column1, Column2) FROM Table GROUP BY Column1, Column2; 4

6 Käytän tässä työssä esimerkkinä Asukkaat-taulua, jossa on sarakkeet: Sotu, Sukupuoli, Nimi, Postinumero, Kaupunki ja Lääni. Kyselyn, jossa ryhmittelytekijänä on lääni- ja kaupunki sarakkeet, saadaan seuraava tulos: SELECT lääni, kaupunki, COUNT (*) FROM Asukkaat GROUP BY lääni, kaupunki; LÄÄNI KAUPUNKI COUNT(*) Pirkanmaa Tampere 2 TuPo Märynummi 1 TuPo Turku 1 Uusimaa Helsinki 4 Uusimaa Kauniainen 1 Kyselyn tuloksena saadaan joukko, jossa uniikit tietorivit on ryhmitelty ensin ensimmäisen ryhmittelytekijän (lääni) ja sitten toisen ryhmittelytekijän (kaupunki) mukaan. 3.2 GROUP BY GROUPING SETS SQL3:ssa GROUP BY-määrettä laajennettiin GROUPING SETS lisämääreellä, jolla tulosjoukkoa voidaan ryhmitellä usealla ryhmittelymääreellä yhdessä SQL-lauseessa. GROUP BY GROUPING SETS lauseen syntaksi on seuraava: SELECT Column1, Column2, SUM (Column3) FROM Table GROUP BY GROUPING SETS (Column1, Column2) Käyttämästäni Asukkaat-taulusta saadaan GROUPING SETS - lisämääreellä tehdyn kyselyn tuloksena on tulosjoukko, joka on ryhmitelty useiden eri joukkojen mukaan. Ensin tulosjoukon tiedot ryhmitellään (lääni, kaupunki)-tekijän, sitten läänin ja viimeiseksi kaupungin mukaan. 5

7 SELECT lääni, kaupunki, COUNT (*) FROM Asukkaat GROUP BY GROUPING SETS ((lääni, kaupunki), lääni, kaupunki); LÄÄNI KAUPUNKI COUNT(*) Pirkanmaa Tampere 2 TuPo Märynummi 1 TuPo Turku 1 Uusimaa Helsinki 4 Uusimaa Kauniainen 1 Pirkanmaa 2 TuPo 2 Uusimaa 5 Helsinki 4 Kauniainen 1 Märynummi 1 Tampere 2 Turku 1 Ryhmittelytekijä (lääni, kaupunki) tuo tässä tapauksessa GROUP BY lääni, kaupunki lausetta vastaavan tuloksen ryhmiteltynä tulosjoukon alkuun. Seuraavaksi tulosjoukko ryhmitellään lääni-tekijän ja viimeiseksi kaupunki-ryhmittelytekijän mukaan. Lääniryhmittelytekijä summaa (COUNT) yhteen kaikki rivit, joissa lääni-sarakkeessa on sama arvo ja kuapunki-ryhmittelytekijä puolestaan rivit, joissa kaupunkirivissä on samat arvot. 3.3 GROUP BY ROLLUP ROLLUP on GROUP BY-määreen laajennus, jolla tulosjoukon rivejä ryhmitellään monelle eri tasolle. Kyselyn tulosjoukko sisältää tavallisten rivien lisäksi myös välisummausrivit (SUB-TOTALS), joille lasketaan kumuloidut summat. ROLLUP:lla siirrytään tulosjoukossa hierarkiatasolla ylöspäin esimerkiksi siirtymällä aikadimensiossa viikosta kuukauteen tai vuoteen tai sijaintidimensiossa postinumerosta kaupunkiin tai 6

8 lääniin. ROLLUP:lla ryhmitellään tulosjoukkoa yhä suurempiin ryhmiin karkeammalle tasolle. ROLL UP:n vastakohtana on DRILL DOWN-määre [ElmNa]. ROLLUP määreen sisältämän kyselyn syntaksi on seuraava: SELECT Column1, Column2, SUM (Column3) FROM Table GROUP BY ROLLUP (Column1, Column2); ROLL UP -määre on oikeastaan kokoelma GROUPING SET - määreitä. Edellinen ROLLUP voidaan toteuttaa GROUPING SETS-määreillä seuraavasti: SELECT Column1, Column2, SUM (Column3) FROM Table GROUP BY GROUPING SETS ( (Column1, Column2) (Column1); ( ) ); ROLL UP määreen sisältämällä SQL-lauseella kysellään esimerkkinä olevasta Asukkaat-taulusta asukkaiden määrää ryhmiteltynä kaupungin ja läänin mukaan seuraavasti: SELECT lääni, kaupunki, COUNT (*) FROM Asukkaat GROUP BY ROLLUP (lääni, kaupunki); Kyselyn tuloksena on tulosjoukko, jossa rivit on ryhmitelty ensisijaisesti läänin ja toissijaisesti kaupungin mukaan. Tulosjoukossa on mukana myös välisummat (SUB TOTALS), jossa toinen ryhmittelytekijä on NULL sekä tulosjoukon kokonaismäärä, jossa molempien ryhmittelytekijöiden arvona on NULL. NULL tarkoittaa tässä sitä, että tieto on kyseisellä rivillä epäoleellinen. 7

9 LÄÄNI KAUPUNKI COUNT(*) Uusimaa Helsinki 4 Uusimaa Kauniainen 1 Uusimaa 5 TuPo Turku 1 TuPo Märynummi 1 TuPo 2 Pirkanmaa Tampere 2 Pirkanmaa 2 9 Tulosjoukko on muodostaa 4 ryhmää läänisarakkeen mukaan (Uusimaa, TuPo, Pirkanmaa, NULL= kaikki läänit). Kukin lääniryhmä ryhmitellään vielä kaupunkisarakkeen mukaan. Viimeisenä rivi, jossa sekä lääni, että kaupunkisarakkeiden arvo on NULL. 3.4 GROUP BY CUBE CUBE on SQL3-standardin summausoperaatio, jolla laajennettiin SQL:n GROUP BYmäärettä. CUBE:n esitteli ensimmäisenä John Gray vuonna CUBE-operaatio tuottaa tulosjoukon, joka sisältää sekä ROLLUP:n että ristiviittaustaulut. CUBE:lla saadaan taulusta esille sekä monitasoisia ryhmittelyjä että välisummausrivejä [GBLP]. CUBE:lla ryhmitellään tulosjoukon rivit kaikkien mahdollisten ryhmittelyjoukkojen mukaan: CUBE onkin eräänlainen laajennus ROLL UP-määreestä. CUBE-määreen sisältämän SQL-lauseen syntaksi on seuraava: SELECT Column1, Column2, SUM (Column3) FROM Table GROUP BY CUBE (Column1, Column2); Edellinen CUBE-lause voidaan toteuttaa GROUPING SETS-määreillä seuraavasti: 8

10 SELECT Column1, Column2, SUM (Column3) FROM Table GROUP BY GROUPING SETS ( (Column1, Column2) (Column1) (Column2) ()); Esimerkkinä käytetystä Asukkaat-taulusta saadaan seuraavalla CUBE-määreen sisältämällä SQL-lauseella tulosjoukko, jossa taulusta on haettu kaikki mahdolliset CUBE-määreessä olevien dimensioiden kombinaatiot: SELECT lääni, kaupunki, COUNT (*) FROM Asukkaat GROUP BY CUBE (lääni, kaupunki); LÄÄNI KAUPUNKI COUNT(*) 9 Turku 1 Tampere 2 Helsinki 4 Märynummi 1 Kauniainen 1 Pirkanmaa 2 Pirkanmaa Tampere 2 Tupo 2 TuPo Turku 1 TuPo Märynummi 1 Uusimaa 5 Uusimaa Helsinki 4 Uusimaa Kauniainen 1 9

11 Tässä tapauksessa tulosjoukon ensimmäisellä rivillä on dataa tarkasteltu lääni- ja kaupunkidimensioiden suhteen (millä tahansa arvoilla). Seuraavaksi tulosjoukko ryhmitellään läänidimension mukaan ja viimeiseksi kaupunkidimension mukaan. Lääniryhmittely jaetaan vielä kaupunkidimension mukaan aliryhmiin ja kaupunkidimensio läänidimension mukaisiin aliryhmiin. CUBE-määreellä saadaan esille myös ristiinviittaukset, joita tässä esimerkissä ei ole. 4 Yhteenveto Tässä työssä on käsitelty SQL:n GROUP BY-määreen laajennuksia SQL3-standardissa. SQL3-standardin laajennukset mahdollistavat tietovarastotoimintojen toteuttamisen SQL:llä tehtävissä kyselyissä. GROUP BY-määreellä voidaan ryhmitellä kyselyn tulosjoukkoa useiden ryhmittelytekijöiden mukaan, ja määreen laajennuksilla saadaan esille tarkempaa tietoa kannasta. GROUP BY GROUPING SETS määreellä saadaan yhdellä kyselyllä useiden ryhmittelyjen tulokset ja GROUP BY ROLLUP mahdollistaa porautumisen ja välisummausten tekemisen tulosjoukosta. GROUP BY CUBE mahdollistaa moniuloitteisten kyselyjen ja ristiinviittausten toteuttamisen SQL:llä. Kaupalliset sovellukset tarjoavat kasvaviin tietovarastotarpeisiin erilaisia uusia ratkaisuja ja sovelluksia, joita voidaan käyttää mm. yritystoiminnassa päätöksenteon ja johtamisprosessien tukemiseen. Tämä tarkoittanee myös SQL-standardin kehittämistä edelleen kohti monipuolisempaa tietojen analysointi- ja raportointitoimintoja. 10

12 5 Lähteet [AgChN] Agrawal, S, Chaudhuri, S, Narasayya, V: Automated selection of materialized views and indexes for SQL databases. S ftp://ftp.research.microsoft.com/users/autoadmin/vldb00.pdf ( ) [ChDa] Chaudhuri, S, Dayal, U: An overview of data warehousing and OLAP technology. SIGMOD Record 26(1) S ftp://ftp.research.microsoft.com/users/surajitc/sigrecord.pdf ( ) [Devlin] Devlin, B: Data warehouse from Archtitecture to implementation. Addison-Wesley [ElmNa] Elmasri, R, Navathe, S: Fundamentals of database systems. Addison-Wesley.Third edition [GBLP] Gray, J, Bosworth, A, Layman, A, Pirahesh, H: Data Cube: A Relational Aggregation Operator Generalizing Group-By, Cross-Tab and Sub-Totals. ICDE USA s ( ) 11

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

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

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

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

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

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

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

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

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

HELIA 1 (14) Outi Virkki Tiedonhallinta

HELIA 1 (14) Outi Virkki Tiedonhallinta HELIA 1 (14) Luento SQL... 2 Historiaa... 2 Standardit... 3 Käyttö... 4 DDL... 5 Tietokantaobjektien määrittely... 5 SQL:n tietotyypit... 6 Eheyssääntöjen määrittely... 9 Indeksin määrittely... 11 Syntaksikuvaukset...

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

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

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

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

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

TIETOVARASTOJEN SUUNNITTELU

TIETOVARASTOJEN SUUNNITTELU IIO30120 DATABASE DESIGN / TIETOKANTOJEN SUUNNITTELU TIETOVARASTOJEN SUUNNITTELU KIRJAN HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI, DOCENDO (2003, 2005) LUKU 8 JOUNI HUOTARI & ARI

Lisätiedot

Tietovarastojen suunnittelu

Tietovarastojen suunnittelu Informaatioteknologian instituutti IIO30100 Tietokantojen suunnittelu Tietovarastojen suunnittelu kirjan Hovi, Huotari, Lahdenmäki: Tietokantojen suunnittelu & indeksointi, Docendo (2003, 2005) luku 8

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

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä hyväksymispäivä arvosana arvostelija Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä Tuomas Husu Helsinki 20.2.2010 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Sisältö i 1 Johdanto

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

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

OLAP-tekniikoiden käyttömahdollisuudet teollisuusprosessien analysoinnissa

OLAP-tekniikoiden käyttömahdollisuudet teollisuusprosessien analysoinnissa Automaatio 1999, 14.-16.9.1999, Helsinki. OLAP-tekniikoiden käyttömahdollisuudet teollisuusprosessien analysoinnissa Jukka Kiviniemi, Antoni Wolski VTT Tietotekniikka, PL 1201, 02044 VTT, Finland Puh.

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

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

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

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

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences TIEDONHALLINTA - SYKSY 2011 Kurssikoodi: Saapumisryhmä: Luento 10 TU00AA48-2002 TU10S1E Hannu Markkanen 14.-15.11.2011 9/10/12 Helsinki Metropolia University of Applied Sciences 1 SQL: Monen taulun kyselyt

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

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

Action Request System

Action Request System Action Request System Manu Karjalainen Ohjelmistotuotantovälineet seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 25.10.2000 Action Request System (ARS) Manu Karjalainen Ohjelmistotuotantovälineet

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

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

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

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys Tällä kurssilla on tutustuttu ohjelmistojen mallintamiseen oliomenetelmiä ja UML:ää käyttäen Samaan aikaan järjestetyllä kurssilla on käsitelty

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

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008

Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT. Jouni Huotari S2008 Proseduurit, funktiot ja herättimet - esimerkkeinä Oracle, SQL Server, MySQL ja OCELOT Jouni Huotari S2008 2 Proseduurit Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)

Lisätiedot

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009

PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT, FUNKTIOT JA HERÄTTIMET - ESIMERKKEINÄ ORACLE, SQL SERVER, MYSQL JA OCELOT JOUNI HUOTARI K2009 PROSEDUURIT Ohjelmamoduuleita, jotka voidaan tallettaa tietokantaan (DBMS:n tietohakemistoon)

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

A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi

A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07. Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi A271117 TIETOKANNAT, 3 op Syksy 2008 - TI07 Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi A271117 TIETOKANNAT Tavoitteet Oppia tietokantojen suunnitteluperiaatteet Osata käyttää

Lisätiedot

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas Tiedonhallinnan perusteet Viikko 1 Jukka Lähetkangas Kurssilla käytävät asiat Tietokantojen toimintafilosofian ja -tekniikan perusteet Tiedonsäilönnän vaihtoehdot Tietokantojen suunnitteleminen internetiä

Lisätiedot

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu 13.11.2000 HELIA 1 (15) Luento 2.7 Toiminnallisuutta tietokantaan... 2 Deklaratiivinen eheysvalvonta... 2 Proseduraalinen eheysvalvonta... 3 Eheysvalvonnan suunnittelusta... 4 Sääntöjen määrittely... 4 Toteutusvaihtoehdot...

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

MySQL ja PostgreSQL Seminaarityö

MySQL ja PostgreSQL Seminaarityö Jani Ahde (1401497, TI14SPeli) MySQL ja PostgreSQL Seminaarityö Essee Opintojakso 206101312_TP Marraskuu 2015 SISÄLLYS 1 JOHDANTO... 3 2 RELAATIO JA SQL... 3 2.1 Relaatiotietokanta... 3 2.2 SQL... 4 3

Lisätiedot

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta Jouni Huotari Martti Laiho (materiaali on osa virtuaaliammattikorkeakoulun Tietokantaosaaja-opintokokonaisuutta) opintokokonaisuutta)

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

TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO

TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO JOUNI HUOTARI 2005-2010 OLAP-OHJETEKSTIT KOPIOITU MICROSOFTIN OHJATUN OLAP-KUUTION TEKO-OHJEESTA ESIMERKIN KUVAUS JA OLAP-MÄÄRITELMÄ

Lisätiedot

Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä

Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä OLAP-kuution teko Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta Esimerkin kuvaus ja OLAP-määritelmä Tavoitteena on luoda OLAP-kuutio Northwind-tietokannan tilaustiedoista

Lisätiedot

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

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki 9.3.2010 HELIA TIKO-05 1 (22) SQL SQL... 2 Historiaa... 2 Standardit... 3 Käyttö... 4 Sql-komentojen kirjoittaminen... 5 DDL... 7 Tietokantaobjektien määrittely... 7 SQL:n tietotyypit... 8 Eheyssääntöjen määrittely...

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

HELIA 1 (11) Outi Virkki Tiedonhallinta

HELIA 1 (11) Outi Virkki Tiedonhallinta HELIA 1 (11) Luento Käyttöoikeuksista ja tiedon suojauksesta... 2 Käyttäjätunnukset... 3 Tunnuksen luominen... 4 Oikeudet / Valtuudet... 5 Oikeuksien hallinta SQL:ssa... 6 Suojaustarkkuus?... 7 Roolit...

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

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

TAMPEREEN TEKNILLINEN YLIOPISTO KÄYTTÖOHJE TIETOVARASTON KUUTIOT

TAMPEREEN TEKNILLINEN YLIOPISTO KÄYTTÖOHJE TIETOVARASTON KUUTIOT TAMPEREEN TEKNILLINEN YLIOPISTO KÄYTTÖOHJE TIETOVARASTON KUUTIOT 14.11.2011 Sisältö Perustietoa tietovarastosta... 2 Perustietoa kuutioista... 2 Dimensioiden valinta... 2 Uuden dimension lisääminen aikaisemman

Lisätiedot

Tietokantakurssit / TKTL

Tietokantakurssit / TKTL Tietokantakurssit / TKTL Tietokantojen perusteet - tietokannan käyttö: SQL, sovellukset Tietokannan hallinta - tietokannanhallintajärjestelmän ominaisuuksia: tallennusrakenteet kyselyjen toteutus tapahtumien

Lisätiedot

A271117 TIETOKANNAT, 4 op Kevät 2010 - TI09

A271117 TIETOKANNAT, 4 op Kevät 2010 - TI09 A271117 TIETOKANNAT, 4 op Kevät 2010 - TI09 Teemu Saarelainen, lehtori Tietotekniikka teemu.saarelainen@kyamk.fi A271117 TIETOKANNAT Tavoitteet Oppia tietokantojen suunnitteluperiaatteet Osata käyttää

Lisätiedot

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu

HELIA 1 (15) Outi Virkki Tietokantasuunnittelu HELIA 1 (15) Luento 2.6 Käyttöoikeuksista ja suojauksesta... 2 Suojausten suunnittelu... 3 Käyttäjätunnukset... 4 Tunnuksen luominen... 5 Tunnuksen muuttaminen... 6 Tunnuksen poistaminen... 6 Oikeudet

Lisätiedot

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö Tekijät: Eemeli Honkonen Joni Metsälä Työ palautettu: SISÄLLYSLUETTELO: 1 SEMINAARITYÖN KUVAUS... 3 2 TIETOKANTA... 3 2.1 MITÄ TIETOKANNAT SITTEN OVAT?... 3

Lisätiedot

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

I. Ristiintaulukointi Excelillä / Microsoft Office 2010

I. Ristiintaulukointi Excelillä / Microsoft Office 2010 Savonia-ammattikorkeakoulu Liiketalous Kuopio Tutkimusmenetelmät Likitalo & Mäkelä I. Ristiintaulukointi Excelillä / Microsoft Office 2010 Tässä ohjeessa on mainittu ensi Excelin valinnan/komennon englanninkielinen

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

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

Joko tunnet nämän Oracle10g SQL:n piirteet? Kari Aalto Saariston IT

Joko tunnet nämän Oracle10g SQL:n piirteet? Kari Aalto Saariston IT Joko tunnet nämän Oracle10g SQL:n piirteet? Kari Aalto Saariston IT Agenda Regular Expression - funktiot Case-insensitive Sort Case-insensitive Seach Merge muutokset Tree-walking in 10g DML Returning Values

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

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

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

Kirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

Kirjasto Relaatiotietokannat Kevät 2001. Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina Kirjasto Kevät 2001 Auvinen Annemari Niemi Anu Harjoitustyö 7.4.2001 Sisällysluettelo 1. Yleiskuvaus... 3 2. Vaatimukset... 3 2.1. Toiminnalliset... 3 2.1.1. Sisäänkirjautuminen... 3 2.1.2. Nimikkeiden

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

TIETOKANTOJEN PERUSTEET OSIO 14 MARKKU SUNI

TIETOKANTOJEN PERUSTEET OSIO 14 MARKKU SUNI TIETOKANTOJEN PERUSTEET OSIO 14 MARKKU SUNI Tavoite: Suunnitella käyttäjien tarvitsemat turvallisuusmekanismit ja säännöt. Toisin sanoen: tehdä tietokannasta turvallinen ja luotettava. Muistutus: Tietokanta

Lisätiedot

SISÄLTÖ. Vuokko Vanhala-Nurmi, 2013 Excel jatko

SISÄLTÖ. Vuokko Vanhala-Nurmi, 2013 Excel jatko Excel 2013 Sisällysluettelo SISÄLTÖ PIVOT-TAULUKKO... 2 Pivot-taulukkoraportti... 2 Pivot-taulukon kokoaminen... 2 Pivot-taulukon muokkaaminen... 4 Kenttien otsikoiden ja jäsentelypainikkeiden piilottaminen...

Lisätiedot

Relaatiotemporaalinen tietomalli mittaustiedon hallintaa varten

Relaatiotemporaalinen tietomalli mittaustiedon hallintaa varten Automaatio 1999, 14.-16.9.1999, Helsinki. Relaatiotemporaalinen tietomalli mittaustiedon hallintaa varten Antoni Wolski Johannes Arminen Antti Pesonen VTT Tietotekniikka, PL 1201, 02044 VTT, Finland Puh.

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

HELIA 1 (13) Outi Virkki Tietokantasuunnittelu

HELIA 1 (13) Outi Virkki Tietokantasuunnittelu HELIA 1 (13) Luento 2.9 Tietohakemistot 2 2 Coddin 12 säännöstä RDBMS:lle... 3 Oraclen tietohakemistonäkymät (osa) 4 Yleiset 4 Taulut 4 Säännöt 4 Näkymät 4 Synonyymit 5 Talletetut rutiinit 5 Käyttöoikeudet

Lisätiedot

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI

TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI TIETOKANTOJEN PERUSTEET OSIO 11 MARKKU SUNI Tarkastellaan Tietokannan fyysistä suunnittelua Menetelmän vaihetta 4 Looginen suunoitelma muutetaan toimiviksi tauluiksi Id enimi snimi muuta 1 Aki Joki xxx

Lisätiedot

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10

HOJ Haja-aiheita. Ville Leppänen. HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 HOJ Haja-aiheita Ville Leppänen HOJ, c Ville Leppänen, IT, Turun yliopisto, 2012 p.1/10 Missä mennään... 1. Johdanto (1h) 2. Säikeet (2h) 3. Samanaikaisuudesta (2h) 4. Hajautetuista sovelluksista (1h)

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

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

SPARQL(SPARQL Protocol and RDF Query Language)

SPARQL(SPARQL Protocol and RDF Query Language) SPARQL SPARQL(SPARQL Protocol and RDF Query Language) Suosituin RDF-kyselykieli Vrt. SQL & Relaatiotietokannat W3C-standardi v. 2008 Versio 1.1 standardi v.2013 Käytetään usein SPARQL-endpointien kautta.

Lisätiedot

3. Taulujen määrittely ja muuttaminen

3. Taulujen määrittely ja muuttaminen 3. Taulujen määrittely ja muuttaminen DDL: Taulujen luonti, muutos ja poisto DML: taulujen tietojen ylläpito Tapahtumien (transaktioiden) hallinta Näkymät, synonyymit ja muut tietokantaobjektit Taulujen

Lisätiedot

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu

HELIA 1 (21) Outi Virkki Tietokantasuunnittelu HELIA 1 (21) Luento 4.1 Oliot ja Relaatiot... 2 Relaatiomalli... 2 Oliomalli... 2 Termejä... 4 Yhteensovituksen 3 tapaa... 5 1) Oliot relaatioina / tauluina ja RDBMS... 6 Olioluokka... 7 Olion identiteetti...

Lisätiedot

T-76.115 Testiraportti TR-3. ETL-työkalu

T-76.115 Testiraportti TR-3. ETL-työkalu T-76.115 Testiraportti TR-3 ETL-työkalu ExtraTerrestriaLs Versio Päivämäärä Tekijä Kuvaus 1.0 14.03.05 Risto Kunnas Ensimmäinen versio 1.1 15.03.05 Risto Kunnas Korjauksia Sivu 1 / 14 Sisällysluettelo

Lisätiedot

D B. Tietokannan hallinta - kurssin tavoite. Kurssilla opitaan periaatteet. Edellytyksenä osallistumiselle on Tietokantojen perusteiden hallinta

D B. Tietokannan hallinta - kurssin tavoite. Kurssilla opitaan periaatteet. Edellytyksenä osallistumiselle on Tietokantojen perusteiden hallinta Tietokannan hallinta - kurssin tavoite Kurssilla opitaan periaatteet fyysisen tietokannan tallennuksesta ja käsittelystä tietokantakyselyiden muuntamisesta fyysisen tietokannan käsittelyoperaatioiksi kyselyn

Lisätiedot

Oliotietokannat. Nääsvillen Oliopäivät Pekka Kähkipuro Kehitysjohtaja, FT

Oliotietokannat. Nääsvillen Oliopäivät Pekka Kähkipuro Kehitysjohtaja, FT Oliotietokannat Nääsvillen Oliopäivät 2004 15.12.2004 Pekka Kähkipuro Kehitysjohtaja, FT pekka.kahkipuro@sysopen.fi Oliotietokanta Idea: pysyvän tiedon tallentaminen suoraan oliomuodossa Tietosisältö ja

Lisätiedot

MICROSOFT EXCEL 2010

MICROSOFT EXCEL 2010 1 MICROSOFT EXCEL 2010 Taulukkolaskentaohjelman jatkokurssin tärkeitä asioita 2 Taulukkolaskentaohjelmalla voit Käyttää tietokonetta ruutupaperin ja taskulaskimen korvaajana Laatia helposti ylläpidettäviä

Lisätiedot

Tietokannan webbikytkentä. Janne Petäjä

Tietokannan webbikytkentä. Janne Petäjä Tietokannan webbikytkentä Janne Petäjä Helsinki 7. huhtikuuta 2003 Relaatiotietokannat nyt - seminaari HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Tietokannan webbikytkentä Janne Petäjä Relaatiotietokannat

Lisätiedot

Tietotekniikan laitos Käki-projekti TIETOKANTASUUNNITELMA. 1. Johdanto

Tietotekniikan laitos Käki-projekti TIETOKANTASUUNNITELMA. 1. Johdanto Jyväskylän yliopisto SUUNNITELMA Tietotekniikan laitos 5.11.2003 Käki-projekti TIETOKANTASUUNNITELMA 1. Johdanto Suunnitelma sisältää kuvauksen tietokannan suunnittelussa käytetyistä periaatteista, kuvan

Lisätiedot

Makrojen mystinen maailma lyhyt oppimäärä

Makrojen mystinen maailma lyhyt oppimäärä Makrojen mystinen maailma lyhyt oppimäärä Makrot osana SAS-teknologiaa Yleiskuva Jouni Javanainen Aureolis lyhyesti Aureolis on jatkuvia Business Intelligence -palveluita tuottava asiantuntijaorganisaatio

Lisätiedot

Denormalisointia turvallisesti. Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso

Denormalisointia turvallisesti. Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso Denormalisointia turvallisesti Ougf syysseminaari 4.11.2010 Pörssitalo Helsinki Timo Raitalaakso Timo Raitalaakso Senior Database Specialist Solita Oy 2001- - 2001 Tampereen Teknillinen korkeakoulu Tietokannat

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

DXL Library ja DXL-kielen olemus. Pekka Mäkinen Pekka.Makinen@softqa.fi SoftQA Oy http/www.softqa.fi/

DXL Library ja DXL-kielen olemus. Pekka Mäkinen Pekka.Makinen@softqa.fi SoftQA Oy http/www.softqa.fi/ DXL Library ja DXL-kielen olemus Pekka Mäkinen Pekka.Makinen@softqa.fi SoftQA Oy http/www.softqa.fi/ DOORS extension Language DXL on DOORSin laajennuskieli, jolla voidaan kehittää lisätoiminnallisuutta.

Lisätiedot

Written by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36

Written by Administrator Monday, 05 September 2011 15:14 - Last Updated Thursday, 23 February 2012 13:36 !!!!! Relaatiotietokannat ovat vallanneet markkinat tietokantojen osalta. Flat file on jäänyt siinä kehityksessä jalkoihin. Mutta sillä on kuitenkin tiettyjä etuja, joten ei se ole täysin kuollut. Flat

Lisätiedot

3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN

3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN 3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN DDL: TAULUJEN LUONTI, MUUTOS JA POISTO DML: TAULUJEN TIETOJEN YLLÄPITO TAPAHTUMIEN (TRANSAKTIOIDEN) HALLINTA NÄKYMÄT, SYNONYYMIT JA MUUT TIETOKANTAOBJEKTIT TAULUJEN

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

Excel pivot. Sisällys

Excel pivot. Sisällys Excel 2016 -pivot Markku Könkkölä JY / Digipalvelut Sisällys Mikä on pivot Tiedot sopivaan muotoon ja alue taulukoksi Pivot-taulukon luonti ja kenttien valinta Kenttien muotoilu, suodatukset, ryhmittelyt

Lisätiedot

CSE-A1200 Tietokannat

CSE-A1200 Tietokannat CSE-A1200 Tietokannat 29.3.2016 CSE-A1200 Tietokannat 29.3.2016 1 / 40 Oppimistavoitteet: tämän luennon jälkeen Tiedät, miten tietokannan relaatioiden (taulujen) määrittelyt kirjoitetaan SQL:llä. Osaat

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

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI

TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI TIETOKANNAT JOHDANTO JOUNI HUOTARI & ARI HOVI 2000-2017 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

SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN

SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN Usein tarvitaan käyttäjän käsin syöttämiä lukuja eri tarkoituksiin. Tällaisia ovat mm. budjetti-, ennuste-, tavoite- ym. luvut. Lukuja syötetään eri kohteille,

Lisätiedot

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 Tietokantaohjelmointi 23.2.2000. Harri Laine 1. SQL:n käyttö ohjelmissa

Helsingin yliopisto, TKTL Tietokantojen perusteet, k 2000 Tietokantaohjelmointi 23.2.2000. Harri Laine 1. SQL:n käyttö ohjelmissa SQL:n käyttö ohjelmissa Tietokannan käyttö ohjelmasta Miksi vuorovaikutteinen käyttö ei riitä? kielen hallinta: maallikot? yhdistetään yleiskielen ja tietokantakielen edut, mm.» monimutkaisempi laskenta»

Lisätiedot

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi)

Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Maiju Mykkänen (D6297@jamk.fi) Susanna Sällinen (E0941@jamk.fi) Tietokannan hallinta-opintojakson selvitysraportti Huhtikuu 2010 Mediatekniikka ICT/Teknologia Tämän teosteoksen käyttöoikeutta koskee Creative

Lisätiedot

TIETOKANNANHOITAJA DBA (DATABASE ADMINISTRATOR) JA TIETOKANNAN HALLINTA

TIETOKANNANHOITAJA DBA (DATABASE ADMINISTRATOR) JA TIETOKANNAN HALLINTA TIETOKANNANHOITAJA DBA (DATABASE ADMINISTRATOR) JA TIETOKANNAN HALLINTA JOUNI HUOTARI MARTTI LAIHO (materiaali on osa virtuaaliammattikorkeakoulun Tietokantaosaaja-opintokokonaisuutta) JOHDANTO Tietokannanhoitaja

Lisätiedot