Lai izmantotu Power Pivot, jums nav jābūt ekspertam datu bāzes modelētājam. Bet ir svarīgi saprast attiecības. Jo labāk izpratīsit, kā dati tiek glabāti un pārvaldīti datu bāzēs, jo efektīvāk izmantosit Power Pivot pārskatu veidošanai.
Attiecības ir mehānisms, ar kuru atsevišķas tabulas ir saistīti viens ar otru. Attiecības var uzskatīt par VLOOKUP, kurā vienā datu diapazonā esošie dati tiek saistīti ar datiem citā datu diapazonā, izmantojot indeksu vai unikālu identifikatoru. Datubāzēs attiecības dara to pašu, taču bez grūtībām ar formulu rakstīšanu.
Attiecības ir svarīgas, jo lielākā daļa datu, ar kuriem strādājat, iekļaujas daudzdimensiju hierarhijā. Piemēram, jums var būt tabula, kurā parādīti klienti, kuri pērk produktus. Šiem klientiem ir nepieciešami rēķini ar rēķinu numuriem. Šajos rēķinos ir vairākas darījumu rindas, kurās norādīts, ko viņi iegādājās. Tur pastāv hierarhija.
Tagad viendimensijas izklājlapu pasaulē šie dati parasti tiek glabāti plakanā tabulā, piemēram, šeit parādītajā.
Dati tiek saglabāti Excel izklājlapā, izmantojot plakanas tabulas formātu.
Tā kā klientiem ir vairāk nekā viens rēķins, klienta informācija (šajā piemērā CustomerID un CustomerName) ir jāatkārto. Tas rada problēmas, kad šie dati ir jāatjaunina.
Piemēram, iedomājieties, ka uzņēmuma Aaron Fitz Electrical nosaukums mainās uz Fitz and Sons Electrical. Aplūkojot tabulu, redzat, ka vairākās rindās ir ietverts vecais nosaukums. Jums ir jānodrošina, lai katra rinda, kurā ir vecais uzņēmuma nosaukums, tiktu atjaunināta, atspoguļojot izmaiņas. Nevienas rindas, kuras izlaidīsit, netiks pareizi kartētas ar pareizo klientu.
Vai nebūtu loģiskāk un efektīvāk ierakstīt klienta vārdu un informāciju tikai vienu reizi? Tā vietā, lai atkārtoti rakstītu vienu un to pašu klienta informāciju, jums vienkārši varētu būt sava veida klienta atsauces numurs.
Šī ir attiecību ideja. Jūs varat atdalīt klientus no rēķiniem, ievietojot katru savās tabulās. Pēc tam varat izmantot unikālu identifikatoru (piemēram, CustomerID), lai tos saistītu kopā.
Nākamajā attēlā ir parādīts, kā šie dati izskatītos relāciju datu bāzē. Dati tiks sadalīti trīs atsevišķās tabulās: Klienti, InvoiceHeader un InvoiceDetails. Pēc tam katra tabula būtu saistīta, izmantojot unikālus identifikatorus (šajā gadījumā klienta ID un rēķina numurs).
Datu bāzes izmanto attiecības, lai saglabātu datus unikālās tabulās un vienkārši saistītu šīs tabulas savā starpā.
Tabulā Klienti būtu unikāls ieraksts katram klientam. Tādā veidā, ja jums ir jāmaina klienta vārds, izmaiņas būs jāveic tikai šajā ierakstā. Protams, reālajā dzīvē klientu tabulā būtu iekļauti citi atribūti, piemēram, klienta adrese, klienta tālruņa numurs un klienta sākuma datums. Jebkuru no šiem citiem atribūtiem var arī viegli saglabāt un pārvaldīt tabulā Klienti.
Visizplatītākais attiecību veids ir attiecības viens pret daudziem . Tas ir, katram ierakstam vienā tabulā vienu ierakstu var saskaņot ar daudziem ierakstiem atsevišķā tabulā. Piemēram, rēķina galvenes tabula ir saistīta ar rēķina informācijas tabulu. Rēķina galvenes tabulai ir unikāls identifikators: rēķina numurs. Rēķina informācija izmantos rēķina numuru katram ierakstam, kas atspoguļo konkrētā rēķina informāciju.
Cits attiecību veids ir attiecības viens pret vienu : katram ierakstam vienā tabulā viens un tikai viens atbilstošs ieraksts atrodas citā tabulā. Datus no dažādām tabulām viens pret vienu attiecībās var tehniski apvienot vienā tabulā.
Visbeidzot, attiecībās daudzi pret daudziem ierakstiem abās tabulās var būt neierobežots skaits atbilstošu ierakstu otrā tabulā. Piemēram, bankas datu bāzē var būt dažādu kredītu veidu tabula (mājas aizdevums, auto kredīts un tā tālāk) un klientu tabula. Klientam var būt dažādi kredītu veidi. Tikmēr katrs kredīta veids var tikt piešķirts daudziem klientiem.