Sinun ei tarvitse olla asiantuntija tietokannan mallintaja käyttääksesi Power Pivotia. Mutta on tärkeää ymmärtää suhteet. Mitä paremmin ymmärrät, kuinka tietoja tallennetaan ja hallitaan tietokantoissa, sitä tehokkaammin hyödynnät Power Pivotia raportoinnissa.
Suhde on mekanismi, jolla erilliset taulukot liittyvät toisiinsa. Voit ajatella suhdetta VLOOKUP:na, jossa yhdistät yhden tietoalueen tiedot toisen tietoalueen tietoihin indeksin tai yksilöllisen tunnisteen avulla. Tietokannoissa suhteet tekevät saman asian, mutta ilman kaavojen kirjoittamisen vaivaa.
Suhteet ovat tärkeitä, koska suurin osa käsittelemistäsi tiedoista sopii moniulotteiseen hierarkiaan. Sinulla voi esimerkiksi olla taulukko, joka näyttää tuotteita ostavat asiakkaat. Nämä asiakkaat tarvitsevat laskuja, joissa on laskunumero. Näissä laskuissa on useita tapahtumia, joissa luetellaan heidän ostamansa. Siellä on hierarkia.
Nyt yksiulotteisessa laskentataulukkomaailmassa nämä tiedot tyypillisesti tallennettaisiin tasaiseen taulukkoon, kuten tässä näytetään.
Tiedot tallennetaan Excel-taulukkoon tasaisen taulukon muodossa.
Koska asiakkailla on useampi kuin yksi lasku, asiakastiedot (tässä esimerkissä Asiakastunnus ja Asiakasnimi) on toistettava. Tämä aiheuttaa ongelmia, kun tiedot on päivitettävä.
Kuvittele esimerkiksi, että yrityksen Aaron Fitz Electrical nimi muuttuu Fitz and Sons Electricaliksi. Kun katsot taulukkoa, näet, että useat rivit sisältävät vanhan nimen. Sinun on varmistettava, että jokainen rivi, joka sisältää vanhan yrityksen nimen, päivitetään vastaamaan muutosta. Mitään rivejä, jotka jäät huomaamatta, ei kohdisteta takaisin oikealle asiakkaalle.
Eikö olisi loogisempaa ja tehokkaampaa tallentaa asiakkaan nimi ja tiedot vain kerran? Sen sijaan, että joutuisit kirjoittamaan samoja asiakastietoja toistuvasti, sinulla voi olla vain jonkinlainen asiakkaan viitenumero.
Tämä on ihmissuhteiden idea. Voit erottaa asiakkaat laskuista sijoittamalla kukin omiin taulukoihinsa. Sitten voit käyttää yksilöllistä tunnistetta (kuten asiakastunnusta) liittääksesi ne toisiinsa.
Seuraava kuva havainnollistaa, miltä nämä tiedot näyttäisivät relaatiotietokannassa. Tiedot jaetaan kolmeen erilliseen taulukkoon: Asiakkaat, InvoiceHeader ja InvoiceDetails. Jokainen taulukko yhdistettäisiin sitten käyttämällä yksilöllisiä tunnisteita (tässä tapauksessa asiakastunnus ja laskun numero).
Tietokannat käyttävät suhteita tietojen tallentamiseen yksilöllisiin taulukoihin ja yksinkertaisesti yhdistävät nämä taulukot toisiinsa.
Asiakkaat-taulukko sisältää yksilöllisen tietueen jokaiselle asiakkaalle. Tällä tavalla, jos sinun on muutettava asiakkaan nimeä, sinun on tehtävä muutos vain kyseiseen tietueeseen. Tietysti tosielämässä Asiakkaat-taulukko sisältäisi muita määritteitä, kuten asiakkaan osoitteen, asiakkaan puhelinnumeron ja asiakkaan aloituspäivämäärän. Mikä tahansa näistä muista määritteistä voidaan myös helposti tallentaa ja hallita Asiakkaat-taulukkoon.
Yleisin suhdetyyppi on yksi-moneen suhde. Toisin sanoen jokaista yhden taulukon tietuetta kohden voidaan sovittaa yksi tietue useisiin erillisen taulukon tietueisiin. Esimerkiksi laskun otsikkotaulukko liittyy laskun tietotaulukkoon. Laskun otsikkotaulukolla on yksilöllinen tunniste: Laskun numero. Laskutieto käyttää laskun numeroa jokaiselle tietueelle, joka edustaa kyseisen laskun yksityiskohtia.
Toinen suhdetyyppi on yksi-yhteen- suhde: Jokaiselle yhden taulukon tietueelle yksi ja vain yksi vastaava tietue on eri taulukossa. Tiedot eri taulukoista yksi-yhteen-suhteessa voidaan teknisesti yhdistää yhdeksi taulukoksi.
Lopuksi useista moneen -suhteessa molempien taulukoiden tietueilla voi olla mikä tahansa määrä vastaavia tietueita toisessa taulukossa. Esimerkiksi pankin tietokannassa voi olla taulukko erityyppisistä lainoista (asuntolaina, autolaina ja niin edelleen) ja asiakastaulukko. Asiakkaalla voi olla monenlaisia lainoja. Samaan aikaan jokainen lainatyyppi voidaan myöntää useille asiakkaille.