Din browser understøtter ikke video.

Gør din dataanalyse mere effektiv ved at oprette relationer amogn forskellige tabeller. En relation er en forbindelse mellem to tabeller, der indeholder data: Den ene kolonne i hver tabel er grundlaget for relationen. Som eksempel på, hvorfor relationer er nyttige, kan du forestille dig, at du sporer data til din virksomheds kundeordrer. Du kan spore alle dataene i en enkelt tabel med en struktur som denne:

Kunde-id

Navn

Mail

NedsatTakst

Ordre-id

Ordredato

Produkt

Antal

1

Ashton

chris.ashton@contoso.com

,05

256

2010-07-01

Compact Digital

11

1

Ashton

chris.ashton@contoso.com

,05

255

2010-03-01

SLR Camera

15

2

Jaworski

michal.jaworski@contoso.com

,10

254

2010-03-01

Budget Movie-Maker

27

Denne tilgang kan fungere, men det indebærer lagring af mange overflødige data, f.eks. kundens mailadresse for hver ordre. Storage er billigt, men hvis mailadressen ændres, skal du sørge for at opdatere hver række for den pågældende kunde. En løsning på dette problem er at opdele dataene i flere tabeller og definere relationer mellem tabellerne. Dette er den metode, der bruges i relationsdatabaser som SQL Server. En database, du importerer, kan f.eks. repræsentere ordredata ved hjælp af tre relaterede tabeller:

Kunder

[Kunde-id]

Navn

Mail

1

Ashton

chris.ashton@contoso.com

2

Jaworski

michal.jaworski@contoso.com

KundeRabatter

[Kunde-id]

NedsatTakst

1

,05

2

,10

Ordrer

[Kunde-id]

Ordre-id

Ordredato

Produkt

Antal

1

256

2010-07-01

Compact Digital

11

1

255

2010-03-01

SLR Camera

15

2

254

2010-03-01

Budget Movie-Maker

27

Relationer findes i en datamodel – en, som du opretter eksplicit, eller en, som Excel automatisk opretter på dine vegne, når du importerer flere tabeller samtidigt. Du kan også bruge Power Pivot-tilføjelsesprogrammet til at oprette eller administrere modellen. Du finder flere oplysninger under Oprette en datamodel i Excel.

Hvis du bruger Power Pivot-tilføjelsesprogrammet til at importere tabeller fra den samme database, kanPower Pivot registrere relationerne mellem tabellerne ud fra kolonnerne i [kantede parenteser] og gengive disse relationer i en datamodel, som den opretter i baggrunden. Du kan finde flere oplysninger under Automatisk registrering og afledning af relationer i denne artikel. Hvis du importere tabeller fra flere kilder, kan du manuelt oprette relationer som beskrevet i Oprette en relation mellem to tabeller.

Relationer er baseret på kolonner i hver tabel, der indeholder de samme data. Du kan f.eks. relatere tabellen Kunder med tabellen Ordrer, hvis hver tabel indeholder en kolonne, der indeholder et kunde-id. I eksemplet er kolonnenavnene de samme, men det er ikke et krav. Et kan være Kunde-id og et andet Kundenummer, så længe alle rækkerne i tabellen Ordrer indeholder et id, der også er gemt i tabellen Kunder.

I en relationsdatabase er der flere forskellige typer nøgler. En nøgle er typisk en kolonne med særlige egenskaber. Hvis du forstår formålet med hver nøgle, kan det hjælpe dig med at administrere en datamodel med flere tabeller, der leverer data til en pivottabel, et pivotdiagram eller en Power View-rapport.

Selvom der er mange typer nøgler, er disse de vigtigste for vores formål her:

  • Primær nøgle: identificerer en række i en tabel, f.eks. Kunde-id i tabellen Kunder.

  • Alternativ nøgle (eller kandidatnøgle): en kolonne, der ikke er den primære nøgle, der er entydig. Tabellen Medarbejdere kan f.eks. gemme et medarbejder-id og et CPR-nummer, som begge er entydige.

  • Fremmed nøgle: en kolonne, der refererer til en entydig kolonne i en anden tabel, f.eks. Kunde-id i tabellen Ordrer, som refererer til Kunde-id i tabellen Kunder.

I en datamodel kaldes den primære nøgle eller den alternative nøgle den relaterede opslagskolonne. Hvis en tabel har både en primær og en alternativ nøgle, kan du bruge begge som basis for en tabelrelation. Der refereres til den fremmede nøgle som kildekolonnen eller blot kolonnen. I vores eksempel defineres der en relation mellem Kunde-id i tabellen Ordrer (kolonnen) og Kunde-id i tabellen Kunder (opslagskolonnen). Hvis du importerer data fra en relationsdatabase, vælger Excel som standard den fremmede nøgle fra én tabel og den tilsvarende primære nøgle fra en anden tabel. Men du kan bruge en hvilken som helst kolonne, der indeholder entydige værdier, som opslagskolonne.

Relationen mellem en kunde og en ordre er en en-til-mange-relation. Der kan til hver kunde være flere ordrer, men der kan ikke være flere kunder til en ordre. En anden vigtig tabelrelation er en til en. I vores eksempel her har tabellen Kunderabatter, der definerer en enkelt rabatsats for hver kunde, en til en-relation til tabellen Kunder.

Denne tabel viser relationerne mellem de tre tabeller (Kunder, Kundediscountsog Ordrer):

Relation

Type

Opslagskolonne

Kolonne

Kunder-KundeRabatter

En-til-en

Kunder.Kunde-id

KundeRabatter.Kunde-id

Kunder-Ordrer

En-til-mange

Kunder.Kunde-id

Ordrer.KundeId

Bemærk!: Mange-til-mange-relationer understøttes ikke i en datamodel. Et eksempel på en mange til mange-relation er en direkte relation mellem Produkter og Kunder, hvor kunden kan købe mange produkter, og det samme produkt kan købes af mange kunder.

Når en relation er oprettet, skal Excel typisk genberegne alle formler, der bruger kolonner fra tabeller i den nyoprettede relation. Afhængigt af mængden af data og kompleksiteten af relationerne kan behandlingen tage noget tid. Du kan finde flere oplysninger i Genberegne formler.

En datamodel kan have flere relationer mellem to tabeller. Hvis du vil oprette nøjagtige beregninger, Excel du bruge en enkelt sti fra én tabel til den næste. Derfor kan der kun være én aktiv relation mellem hvert tabelpar ad gangen. Selvom de andre er inaktive, kan du angive en inaktiv relation i formler og forespørgsler.

I diagramvisning er den aktive relation en udækkende streg, og de inaktive er stiplede linjer. F.eks. indeholder tabellen DimDate i AdventureWorksDW2012 en kolonne, DateKey, der er relateret til tre forskellige kolonner i tabellen FactInternetSales:OrderDate, DueDateog ShipDate. Hvis den aktive relation er mellem DateKey og OrderDate, er det standardrelation i formler, medmindre du angiver andet.

En relation kan oprettes, når følgende krav er opfyldt:

Kriterier

Beskrivelse

Entydigt id for hver tabel

I hver tabel skal der være en kolonne, der entydigt identificerer hver række i den pågældende tabel. Denne kolonne kaldes ofte den primære nøgle.

Entydige opslagskolonner

Dataværdierne i opslagskolonnen skal være entydige. Kolonnen må med andre ord ikke indeholde dubletter. I en datamodel svarer null-strenge og tomme strenge til en tom værdi, som er en entydig dataværdi. Det betyder, at opslagskolonnen ikke kan indeholde flere null-værdier.

Kompatible datatyper

Datatyperne i kildekolonnen og opslagskolonnen skal være kompatible. Du kan finde flere oplysninger om datatyper under Datatyper, der understøttes i datamodeller.

I en datamodel kan du ikke oprette en tabelrelation, hvis nøglen er en sammensat nøgle. Du er også begrænset til at kunne oprette en-til-en-relationer og en-til-mange-relationer. Andre relationstyper understøttes ikke.

Sammensatte nøgler og opslagskolonner

En sammensat nøgle består af mere end én kolonne. Datamodeller kan ikke bruge sammensatte nøgler: En tabel skal altid have præcis én kolonne, der entydigt identificerer hver række i tabellen. Hvis du importerer tabeller, der har en eksisterende relation, der er baseret på en sammensat nøgle, ignorerer guiden Tabelimport i Power Pivot denne relation, fordi den ikke kan oprettes i modellen.

Hvis du vil oprette en relation mellem to tabeller, og der er flere kolonner, der definerer den primære nøgle og den fremmede nøgle, er du nødt til først at kombinere værdier for at oprette en enkelt nøglekolonne, før relationen oprettes. Du kan gøre dette, før du importerer dataene, eller ved at oprette en beregnet kolonne i datamodellen ved hjælp af Power Pivot-tilføjelsesprogrammet.

Mange-til-mange-relationer

En datamodel kan ikke have mange-til-mange-relationer. Du kan ikke bare tilføje sammenføjningstabeller i modellen. Du kan dog bruge DAX-funktioner til at modellere mange-til-mange-relationer.

Self-Joins og løkker

Selv-joins er ikke tilladt i en datamodel. En selv-joinforbindelse er en rekursiv relation mellem en tabel og sig selv. Self-joins bruges ofte til at definere overordnede/underordnede hierarkier. Du kan f.eks. sammenkæde tabellen Medarbejdere med sig selv for at oprette et hierarki, der viser ledelseskæden i en virksomhed.

I Excel er det ikke muligt at oprette relationer i en projektmappe. Med andre ord er følgende sæt relationer ikke tilladt.

Tabel 1, kolonne a   til   Tabel 2, kolonne f

Tabel 2, kolonne f   til   Tabel 3, kolonne n

Tabel 3, kolonne n   til   Tabel 1, kolonne a

Hvis du forsøger at oprette en relation, der ville resultere i, at der blev oprettet en løkke, modtager du en fejlmeddelelse.

En af fordelene ved at importere data ved brug af Power Pivot-tilføjelsesprogrammet er, at Power Pivot nogle gange kan registrere relationer og oprette relationer i den datamodel, programmet opretter i Excel.

Når du importerer flere tabeller, registrerer Power Pivot automatisk eksisterende relationer mellem tabellerne. Når du opretter en pivottabel, analyserer Power Pivot dataene i tabellerne. Det registrerer mulige relationer, der ikke er defineret, og foreslår relevante kolonner, der kan medtages i disse relationer.

Registreringsalgoritmen bruger statiske data om værdierne og metadataene i kolonner til at oprette følgeslutninger om sandsynligheden for relationer.

  • Datatyper i alle relaterede koloner skal være kompatible. Ved automatisk registrering er det kun datatyperne heltal og tekst, der understøttes. Du kan finde flere oplysninger om datatyper under Datakilder, der understøttes i datamodeller.

  • For at relationen kan registreres korrekt, skal antallet af entydige nøgler i opslagskolonnen være større end værdierne i tabellen på mange-siden. Med andre ord må nøglekolonnen på mange-siden af relationen ikke indeholde nogen værdier, der ikke findes i nøglekolonnen i opslagstabellen. Antag f.eks., at du har en tabel, der viser produkter med deressiden (opslagstabellen) og en salgstabel, der viser salg for hvert produkt (mange-siden af relationen). Hvis dine salgsposter indeholder id'et for et produkt, som ikke har et tilsvarende id i tabellen Produkter, kan relationen ikke oprettes automatisk, men du kan muligvis oprette det manuelt. Hvis du Excel finde relationen, skal du først opdatere produktopslagstabellen med de forskellige ide'er for de manglende produkter.

  • Sørg for, at navnet på nøglekolonnen på mange-siden svarer til navnet på i nøglekolonnen i opslagstabellen. Navnene behøver ikke at være nøjagtigt ens. I en virksomhed har du ofte variationer af navnene på kolonner, der i bund og grund indeholder de samme data: Medtag id,Medarbejder-id, Medarbejder-id, EMP_ID osv. Algoritmen registrerer de navne, der ligner hinanden, og tildeler de kolonner, der har lignende eller nøjagtigt ens navne, højere sandsynlighed. Hvis du vil øge sandsynligheden for, at der oprettes en relation, kan du derfor prøve at omdøbe de kolonner i dataene, som du importerer, til noget, der ligner kolonnerne i de eksisterende tabeller. Hvis Excel finder flere mulige relationer, oprettes der ikke en relation.

Disse oplysninger kan hjælpe dig med at forstå, hvorfor ikke alle relationer registreres, eller hvordan ændringer i metadata, f.eks. feltnavn og datatyper, kan forbedre resultaterne af automatisk registrering af relationer. Du kan finde flere oplysninger i Fejlfinding af relationer.

Automatisk registrering for navngivne sæt

Relationer registreres ikke automatisk mellem navngivne sæt og relaterede felter i en pivottabel. Du kan oprette disse relationer manuelt. Hvis du vil bruge automatisk relationsregistrering, skal du fjerne hvert navngivne sæt og tilføje de individuelle felter fra det navngivne sæt og direkte til pivottabellen.

Afledning af relationer

I visse tilfælde sker en automatisk sammenkædning af relationer mellem tabeller. Det betyder f.eks., at hvis du opretter en relation mellem de første to sæt tabeller nedenfor, udledes det, at der findes en relation mellem de to andre tabeller, og der oprettes automatisk en relation.

Produkter og kategori - oprettet manuelt

Kategori og Underkategori - oprettet manuelt

Produkter og Underkategori - relationer udledes

For at relationer kan sammenkædes automatisk, skal relationerne gå i én retning, som vist ovenfor. Hvis de første relationer var mellem f.eks. Salg og Produkter og Salg og Kunder, udledes der ikke en relation. Dette skyldes, at relationen mellem Produkter og Kunder er en mange til mange-relation.

Har du brug for mere hjælp?

Udvid dine færdigheder
Gå på opdagelse i kurser
Få nye funktioner først
Deltag i Microsoft insiders

Var disse oplysninger nyttige?

Hvor tilfreds er du med kvaliteten af oversættelsen?
Hvad påvirkede din oplevelse?

Tak for din feedback!

×