Logga in med Microsoft
Logga in eller skapa ett konto.
Hej,
Välj ett annat konto.
Du har flera konton
Välj det konto som du vill logga in med.
Din webbläsare har inte stöd för video.

Gör dataanalysen mer effekt genom att skapa relationer som skiljer på olika tabeller. En relation är en koppling mellan två tabeller som innehåller data, och en kolumn i varje tabell utgör grunden för relationen. Du märker hur användbara relationer kan vara genom att föreställa dig att du spårar data för verksamhetens kundorder. Du kan spåra alla data i en enskild tabell med en struktur som den här:

Kund-ID

Namn

E-post

Rabatt

Order-ID

Orderdatum

Produkt

Antal

1

Ashton

chris.ashton@contoso.com

.05

256

2010-01-07

Compact Digital

11

1

Ashton

chris.ashton@contoso.com

.05

255

2010-01-03

SLR Camera

15

2

Jaworski

michal.jaworski@contoso.com

.10

254

2010-01-03

Budget Movie-Maker

27

Den här metoden kan fungera, men då uppstår en mängd redundanta data, till exempel kundens e-postadress för varje order. Lagring är billigt, men om e-postadressen ändras måste du uppdatera varje rad för den kunden. En lösning på det här problemet är att dela upp data i flera tabeller och ange relationer mellan tabellerna. Det här är den metod som används i relationsdatabaser som SQL Server. En databas som du importerar kan exempelvis representera orderdata med hjälp av följande tre relaterade tabeller:

Kunder

[Kund-ID]

Namn

E-post

1

Ashton

chris.ashton@contoso.com

2

Jaworski

michal.jaworski@contoso.com

Kundrabatter

[Kund-ID]

Rabatt

1

.05

2

.10

Order

[Kund-ID]

Order-ID

Orderdatum

Produkt

Antal

1

256

2010-01-07

Compact Digital

11

1

255

2010-01-03

SLR Camera

15

2

254

2010-01-03

Budget Movie-Maker

27

Relationer finns inom en datamodell – en som du skapar explicit eller en som Excel skapar åt dig automatiskt när du importerar flera tabeller samtidigt. Du kan även använda Power Pivot-tilläggsprogrammet för att skapa eller hantera modellen. Mer information finns i Skapa en datamodell i Excel.

Om du använder Power Pivot-tilläggsprogrammet för att importera tabeller från samma databas kan Power Pivot identifiera relationerna mellan tabellerna baserat på vilka kolumner som står inom [hakparentes] och kan sedan återge dessa relationer i en datamodell som genereras i bakgrunden. Mer information finns i Automatisk identifiering och slutledning av relationer i den här artikeln. Om du importerar tabeller från flera källor kan du skapa relationer manuellt genom att följa anvisningarna i Skapa en relation mellan två tabeller.

Relationer baseras på kolumner i respektive tabell som innehåller samma data. Du kan till exempel relatera tabellen Kunder med tabellen Order om var och en innehåller en kolumn där kund-ID lagras. I exemplet är kolumnnamnen samma, men detta är inget krav. En kan heta Kund-ID och en annan Kundnummer, bara alla raderna i tabellen Order innehåller ett ID som också lagras i tabellen Kunder.

Det finns flera typer av nycklar i en relationsdatabas. En nyckel är vanligtvis kolumn med särskilda egenskaper. Genom att förstå syftet med varje nyckel kan det bli lättare att hantera en datamodell med flera tabeller som tillhandahåller data till en pivottabell, ett pivotdiagram eller en Power View-rapport.

Det finns många typer av nycklar, men de är viktigast för vårt ändamål här:

  • Primärnyckel: identifierar en rad i en tabell, till exempel CustomerID i tabellen Kunder.

  • Alternativ nyckel (eller kandidatnyckel): en annan kolumn än primärnyckeln som är unik. Till exempel tabellen Anställda kan innehålla ett anställnings-ID och ett personnummer, som båda är unika.

  • Foreign key: a column that refers to a unique column in another table, such as CustomerID in the Orders table, which refers to CustomerID in the Customers table.

I en datamodell kallas primärnyckeln eller den alternativa nyckeln för relaterad kolumn. Om en tabell har både en primärnyckel och en alternativ nyckel kan du använda någon av dessa som grund för en tabellrelation. Sekundärnyckeln kallas för källkolumnen eller bara kolumnen. I vårt exempel definieras en relation mellan CustomerID i tabellen (kolumnen) och CustomerID i tabellen Customers (uppslagskolumnen). Om du importerar data från en relationsdatabas väljer Excel sekundärnyckeln från en tabell och motsvarande primärnyckel från en annan tabell som standard. Du kan emellertid använda valfri kolumn som har unika värden för uppslagskolumnen.

Relationen mellan en kund och en order är en 1:1-relation. Varje kund kan ha flera order, men en order kan inte ha flera kunder. En annan viktig tabellrelation är 1:1. I exemplet här har tabellen Kundrabatter, som definierar en enskild rabattsats för varje kund, en 1:1-relation med tabellen Kunder.

I den här tabellen visas relationerna mellan de tretabellerna (Kunder, Kunddiscountsoch Order):

Relation

Typ

Uppslagskolumn

Kolumn

Kunder-Kundrabatter

en-till-en

Kunder.Kund-ID

Kundrabatter.Kund-ID

Kunder-Order

en-till-många

Kunder.Kund-ID

Order.Kund-ID

Obs!: En datamodell kan inte ha många-till-många-relationer. Ett exempel på en många-till-många-relation är en direkt relation mellan Products och Customers, där en kund kan köpa flera produkter och samma produkt kan köpas av flera kunder.

När en relation har skapats måste Excel beräknas om alla formler som använder kolumner från tabeller i den nya relationen. Bearbetningen kan ta en stund, beroende på mängden data och hur komplexa relationerna är. Mer information finns i Beräkna om formler.

En datamodell kan ha flera relationer mellan två tabeller. För att skapa korrekta beräkningar Excel en väg från en tabell till nästa. Därför är bara en relation mellan varje tabellpar aktiv i taget. Även om de andra är inaktiva kan du ange en inaktiv relation i formler och frågor.

I diagramvyn är den aktiva relationen en heldragen linje och de inaktiva är streckade linjer. I AdventureWorksDW2012 innehåller exempelvis tabellen DimDate kolumnen DateKey, som är relaterad till tre olika kolumner i tabellen FactInternetSales: OrderDate, DueDateoch ShipDate. Om den aktiva relationen är mellan DateKey och OrderDate, är det standardrelationen i formler om inget annat anges.

En relation kan skapas när följande krav uppfylls:

Villkor

Beskrivning

Unik identifierare för varje tabell

Varje tabell måste ha en enstaka kolumn som unikt identifierar varje rad i tabellen. Den här kolumnen kallas ofta för primärnyckeln.

Unika uppslagskolumner

Datavärdena i uppslagskolumnen måste vara unika. Med andra ord kan kolumnen inte innehålla dubbletter. I en datamodell motsvaras null-värden och tomma strängar av blankvärden, som är ett särskilt datavärde. Det betyder att det inte får finnas flera null-värden i uppslagskolumnen.

Kompatibla datatyper

Datatyperna i källkolumnen och uppslagskolumnen måste vara kompatibla. Mer information om datatyper finns i Datatyper som stöds i datamodeller.

Du kan inte skapa en tabellrelation i en datamodell om nyckeln är en sammansatt nyckel. Du är också begränsad till att skapa en-till-en-relation och en-till-många-relationer. Andra relationstyper stöds inte.

Sammansatta nycklar och uppslagskolumner

En sammansatt nyckel består av mer än en kolumn. Datamodeller kan inte använda sammansatta nycklar: en tabell måste alltid ha exakt en kolumn som unikt identifierar varje rad i tabellen. Om du importerar tabeller som har en befintlig relation som baseras på en sammansatt nyckel ignorerar guiden Importera tabell i Power Pivot den relationen eftersom den inte kan skapas i modellen.

Om du vill skapa en relation mellan två tabeller som innehåller flera kolumner som definierar primärnyckeln och sekundärnyckeln, kombinerar du värdena för att skapa en enda nyckelkolumn innan du skapar relationen. Du kan göra det innan du importerar data eller genom att skapa en beräknad kolumn i datamodellen med hjälp av Power Pivot-tillägget.

Många-till-många-relationer

En datamodell kan inte ha många-till-många-relationer. Du kan inte bara lägga till kopplingstabeller i modellen. Du kan emellertid använda DAX-funktioner för att skapa många-till-många-relationer.

Självkopplingar och loopar

Självkopplingar tillåts inte i en datamodell. En självkoppling är en rekursiv relation mellan en tabell och sig själv. Självkopplingar används ofta för att definiera hierarkier mellan överordnade och underordnade. Du kan till exempel koppla tabellen Anställda till sig själv och skapa en hierarki som visar beslutskedjan i ett företag.

I Excel går det inte att skapa loopar mellan relationer i en arbetsbok. Med andra ord tillåts inte följande uppsättning med relationer.

Tabell 1, kolumn a   till   Tabell 2, kolumn f

Tabell 2, kolumn f   till   Tabell 3, kolumn n

Tabell 3, kolumn n   till   Tabell 1, kolumn a

Om du försöker skapa en relation som medför att en loop skapas, uppstår ett fel.

En av fördelarna med att importera data med hjälp av Power Pivot-tilläggsprogrammet är att Power Pivot ibland identifierar relationer och skapar nya relationer i datamodellen som skapas i Excel.

När du importerar flera tabeller identifierar Power Pivot befintliga relationer mellan tabellerna automatiskt. När du skapar en pivottabell analyserar Power Pivot också de data som finns i tabellerna. Programmet identifierar möjliga relationer som inte har skapats, och föreslår lämpliga kolumner som bör användas i dessa relationer.

I identifieringsalgoritmen används statistiska data om värden och metadata i kolumner för antaganden om sannolikheten för relationer.

  • Datatyperna i alla relaterade kolumner måste vara kompatibla. Vid automatisk identifiering stöds bara datatyper med heltal och text. Mer information om datatyper finns i Datatyper som stöds idatamodeller.

  • För att relationen ska upptäckas måste antalet unika nycklar i uppslagskolumnen vara större än värdena i tabellen på "många"-sidan. Det betyder att nyckelkolumnen på "många"-sidan av relationen inte får innehålla några värden som inte finns i uppslagstabellens nyckelkolumn. Anta till exempel att du har en tabell som visar produkter med deras ID:n (uppslagstabellen) och en försäljningstabell som visar försäljningen för varje produkt ("många"-sidan av relationen). Om försäljningsposterna innehåller ID:t för en produkt som inte har något motsvarande ID i tabellen Products så kan relationen inte skapas automatiskt, men du kan kanske skapa den manuellt. För att relationen ska upptäckas av Excel måste du först uppdatera uppslagstabellen Product med ID:na för de produkter som saknas.

  • Kontrollera att namnet på nyckelkolumnen på "många"-sidan liknar namnet på nyckelkolumnen i uppslagskolumnen. Namnen måste inte vara identiska. På ett företag finns det till exempel ofta variationer i namnen på kolumner som innehåller i princip samma data: Anst-ID, Anställnings-ID, Anställnings-ID, EMP_IDoch så vidare. Med algoritmen upptäcks namn som liknar varandra och en högre sannolikhet tilldelas de kolumner som har liknande namn eller namn som matchar exakt. För att öka sannolikheten att en relation skapas kan du därför prova att ändra namn på kolumnerna i de data du importerar till något som liknar kolumnerna i de befintliga tabellerna. Om Excel hittar flera möjliga relationer skapas ingen relation automatiskt.

Den här informationen kan hjälpa dig att förstå varför inte alla relationer identifieras, eller hur ändringar i metadata, till exempel fältnamn och datatyper, kan leda till bättre resultat vid automatisk identifiering av relationer. Mer information finns i Felsöka relationer.

Automatisk identifiering för namngivna uppsättningar

Relationer identifieras inte automatiskt mellan namngivna uppsättningar och relaterade fält i en pivottabell. Du kan skapa dessa relationer manuellt. Om du vill använda automatisk identifiering av relationer tar du bort alla namngivna uppsättningar och lägger till de enskilda fälten från den namngivna uppsättningen direkt i pivottabellen.

Slutledning av relationer

I vissa fall länkas relationer mellan tabeller automatiskt. Om du till exempel skapar en relation mellan de två första uppsättningarna med tabeller nedan, antas en relation förekomma mellan de andra två tabellerna, och en relation upprättas automatiskt.

Produkter och Kategori -- skapas manuellt

Kategori och Underkategori -- skapas manuellt

Produkter och Underkategori -- relation antas förekomma

För att relationer ska kunna länkas automatiskt, måste relationerna gå i en riktning, på det sätt som visas ovan. Om de inledande relationerna finns mellan till exempel Försäljning och Produkter, och Försäljning och Kunder, antas ingen relation förekomma. Detta beror på att relationen mellan Products och Customers är en många-till-många-relation.

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.

Hade du nytta av den här informationen?

Hur nöjd är du med språkkvaliteten?
Vad påverkade din upplevelse?
Genom att trycka på skicka, kommer din feedback att användas för att förbättra Microsofts produkter och tjänster. IT-administratören kan samla in denna data. Sekretesspolicy.

Tack för din feedback!

×