Jedna od najmoćnijih funkcija u programu Power Pivot je mogućnost kreiranja relacija između tabela, a zatim korišćenje povezanih tabela za pronalaženje ili filtriranje srodnih podataka. Povezane vrednosti iz tabela preuzimate pomoću jezika formule koji je obezbeđen uzPower Pivot, Izrazi za analizu podataka (DAX). DAX koristi relacioni model i zbog toga može lako i precizno da preuzme srodne ili odgovarajuće vrednosti u drugoj tabeli ili koloni. Ako ste upoznati sa funkcijom VLOOKUP u programu Excel, ova funkcionalnost u programu Power Pivot slična, ali mnogo lakša za primenu.
Možete da kreirate formule koje se traže kao deo izračunate kolone ili kao deo mere za korišćenje u izvedenoj tabeli ili izvedenom grafikonu. Dodatne informacije potražite u sledećim temama:
Izračunata polja u programskom dodatku Power Pivot
Izračunate kolone u programskom dodatku Power Pivot
Ovaj odeljak opisuje DAX funkcije koje su obezbeđene za pronalaženje, zajedno sa nekim primerima kako se koriste funkcije.
Napomena: U zavisnosti od tipa operacije pronalaženja ili formule za pronalaženje koju želite da koristite, možda ćete prvo morati da kreirate relaciju između tabela.
Razumevanje funkcija za pronalaženje
Mogućnost pronalaženja podataka koji se podudaraju ili povezanih podataka iz druge tabele posebno je korisna u situacijama kada trenutna tabela ima samo identifikator neke vrste, ali podaci koji su vam potrebni (kao što su cena proizvoda, ime ili druge detaljne vrednosti) skladište se u povezanoj tabeli. Korisno je i kada postoji više redova u drugoj tabeli povezanoj sa trenutnim redom ili trenutnom vrednošću. Na primer, možete lako da preuzmete svu prodaju vezanu za određeni region, prodavnicu ili prodavca.
Nasuprot Excel funkcijama za pronalaženje, kao što je VLOOKUP, koje su zasnovane na nizovima ili funkciji LOOKUP, koja dobija prvu od više podudarnih vrednosti, DAX prati postojeće relacije između tabela spojenih tasterima da bi dobili jedinstvenu povezanu vrednost koja se tačno podudara. DAX takođe može da preuzme tabelu zapisa koji su povezani sa trenutnim zapisom.
Napomena: Ako ste upoznati sa relacionim bazama podataka, možete da mislite o pronalaženjima u programu Power Pivot slično ugnežđenom izrazu o izboru u transact-SQL-u.
Preuzimanje jedne srodne vrednosti
Funkcija RELATED vraća jednu vrednost iz druge tabele povezane sa trenutnom vrednošću u trenutnoj tabeli. Navodite kolonu koja sadrži željene podatke, a funkcija prati postojeće relacije između tabela da bi dobavila vrednost iz navedene kolone u srodnoj tabeli. U nekim slučajevima funkcija mora da prati lanac relacija da bi preuzela podatke.
Na primer, pretpostavimo da imate listu današnjih isporuka u programu Excel. Međutim, lista sadrži samo ID broj zaposlenog, ID broj porudžbine i ID broj špeditera, što otežva čitanje izveštaja. Da biste dobili dodatne informacije koje želite, možete da konvertujete tu listu u povezanu Power Pivot, a zatim kreirate relacije sa tabelama "Zaposleni" i "Lokalni prodavac", koja podudara ID zaposlenog sa poljem "EmployeeKey" i "ID prodavca" u polje "Ključ lokalnog prodavca".
Da biste prikazali informacije o pronalaženju u povezanoj tabeli, dodajte dve nove izračunate kolone sa sledećim formulama:
= RELATED('Employees'[EmployeeName])
= RELATED('Prodavac'[ImePreduzeća])Današnje isporuke pre pronalaženja
ID porudžbine |
ID zaposlenog |
ID prodavca |
---|---|---|
100314 |
230 |
445 |
100315 |
15 |
445 |
100316 |
76 |
108 |
Tabela „Zaposleni“
ID zaposlenog |
Zaposlenog |
Lokalni prodavac |
---|---|---|
230 |
Kuppa Vamsi |
Modularni ciklus sistemi |
15 |
Pilar Ackeman |
Modularni ciklus sistemi |
76 |
Kim Ralls |
Povezani bicikli |
Današnje isporuke sa pronalaženjima
ID porudžbine |
ID zaposlenog |
ID prodavca |
Zaposlenog |
Lokalni prodavac |
---|---|---|---|---|
100314 |
230 |
445 |
Kuppa Vamsi |
Modularni ciklus sistemi |
100315 |
15 |
445 |
Pilar Ackeman |
Modularni ciklus sistemi |
100316 |
76 |
108 |
Kim Ralls |
Povezani bicikli |
Funkcija koristi relacije između povezane tabele i tabele "Zaposleni" i "Lokalni prodavci" da bi se dobilo tačno ime za svaki red u izveštaju. Takođe možete da koristite srodne vrednosti za izračunavanja. Više informacija i primera potražite u članku Funkcija RELATED.
Preuzimanje liste srodnih vrednosti
Funkcija RELATEDTABLE prati postojeću relaciju i vraća tabelu koja sadrži sve redove koji se podudaraju iz navedene tabele. Na primer, pretpostavimo da želite da saznate koliko je porudžbina svakog prodavca rasporedio ove godine. Možete da napravite novu izračunatu kolonu u tabeli "Lokalni prodavci" koja sadrži sledeću formulu koja traži zapise za svakog prodavca u ResellerSales_USD tabeli i prebrojava pojedinačne porudžbine koje je postavio svaki lokalni prodavac.
=COUNTROWS(RELATEDTABLE(ResellerSales_USD))
U ovoj formuli funkcija RELATEDTABLE prvo dobija vrednost Ključa lokalnih prodavaca za svakog prodavca u trenutnoj tabeli. (Nije potrebno da navedete kolonu ID-a bilo gde u formuli zato što Power Pivot koristi postojeću relaciju između tabela.) Funkcija RELATEDTABLE zatim preuzima sve redove iz ResellerSales_USD tabele koji su povezani sa svakim lokalnim prodavcem i prebrojava redove. Ako ne postoji relacija (direktna ili indirektna) između dve tabele, onda ćete dobiti sve redove iz ResellerSales_USD tabele.
Za sisteme ciklusa lokalnih prodavaca u uzorku baze podataka postoje četiri porudžbine u tabeli prodaje, tako da funkcija daje 4. Prodavac nema prodaju za povezane bicikle, pa funkcija vraća praznu vrednost.
Lokalni prodavac |
Zapisi u tabeli prodaje za ovog prodavca |
|
---|---|---|
Modularni ciklus sistemi |
ID prodavca |
Broj porudžbine prodaje |
445 |
SO53494 |
|
445 |
SO71872 |
|
445 |
SO65233 |
|
445 |
SO59000 |
|
ID prodavca |
Broj porudžbine prodaje |
|
Povezani bicikli |
Napomena: Pošto funkcija RELATEDTABLE vraća tabelu, a ne jednu vrednost, ona mora da se koristi kao argument funkcije koja izvršava operacije nad tabelama. Više informacija potražite u članku Funkcija RELATEDTABLE.