Data Analysis Expressions (DAX) v orodju PowerPivot

Data Analysis Expressions (DAX) v orodju PowerPivot

Pomembno : Besedilo članka je prevedeno strojno. Glejte zavrnitev odgovornosti. Angleško različico tega članka najdete tukaj .

Data Analysis Expressions (DAX) zveni malo zastrašujoče na prvi, vendar ne pusti ime zavajanja uporabnika. Osnov jezika DAX so zelo lažje razumeli. Prvi stvari prvi - DAX ni programski jezik. DAX je formule jezik. Uporabite lahko DAX za določanje izračuni po meri za Izračunanih stolpcev in mer (imenovan tudi izračunana polja). Funkcija DAX vključuje nekatere funkcije, ki se uporabi v formulah, Excel in dodatnih funkcij za delo s relacijskih podatkov in izvedite dinamične združevanja.

Razumevanje formul DAX

Formule DAX so zelo podobne formulam v Excelu. Ustvarite jih tako, da vnesete enačaj, ki mu sledijo ime ali izraz funkcije in potrebne vrednosti ali argumenti. Tako kot Excel tudi DAX omogoča uporabo različnih funkcij, ki jih lahko uporabite za delo z nizi, za izvedbo izračunov z datumi in časi ali ustvarjanje pogojnih vrednosti.

Vendar pa so med formulami DAX in tistimi v Excelu te pomembne razlike:

  • Če želite izračune prilagoditi po posameznih vrsticah, DAX vključuje funkcije, ki za izvajanje izračunov, ki se razlikujejo glede na kontekst, omogočajo uporabo vrednosti trenutne vrstice ali sorodne vrednosti.

  • DAX vključuje tip funkcije, ki za rezultat vrne tabelo namesto posamezne vrednosti. Te funkcije je mogoče uporabiti za vnos v druge funkcije.

  • Funkcije časovnih podatkovv jeziku DAX omogočajo izvajanje izračunov smiselna časovna obdobja in primerjavo rezultatov v vzporednih obdobjih.

Kje lahko uporabljate formule DAX?

Ustvarite lahko formule v Power Pivotizračunano columns ali izračunani fields.

Izračunani stolpci

Izračunani stolpec je stolpec, ki ga dodate obstoječi tabeli Power Pivot. Namesto da bi lepili ali uvažali vrednosti v stolpec, ustvarite formulo DAX, ki opredeli vrednosti stolpca. Če v vrtilno tabelo (ali vrtilni grafikon) vključite tabelo Power Pivot, se izračunani stolpec lahko uporabi kot vsak drug podatkovni stolpec.

Formule v izračunanih stolpcih so zelo podobne formulam, ki jih ustvarjate v Excelu. Vendar v primerjavi z Excelom ni mogoče ustvariti druge formule za druge vrstice v tabeli; namesto tega se formula DAX samodejno uporabi za celoten stolpec.

Ko stolpec vsebuje formulo, se vrednost izračuna za vsako vrstico. Rezultati se izračunajo za stolpec takoj, ko ustvarite formulo. Vrednosti stolpcev se znova izračunajo samo, če osvežite temeljne podatke ali ročno izvedete preračunavanje.

Ustvarite izračunane stolpce, ki temeljijo na ukrepe in drugih izračunanih stolpcev. Vendar pa ne z enakim imenom za izračunani stolpec in mere, kot to lahko povzroči nejasne rezultate. Ko se sklicuje na stolpec, je najbolje, da uporabite sklic popolnoma določen stolpec, če se želite izogniti pomotoma klicanje mera.

Za podrobnejše informacije glejte Izračunani stolpci v orodju Power Pivot.

Mere

Mera je formula, ki je bila ustvarjena posebej za uporabo v vrtilni tabeli (ali vrtilnega grafikona), ki uporablja Power Pivot podatke. Mere lahko glede na standardne združevalne funkcije, na primer število ali SUM, ali lahko določite lastno formulo s funkcijo DAX. Mera se uporablja v območju vrednosti v vrtilni tabeli. Če želite postaviti izračunanih rezultatov v drugo območje vrtilne tabele, uporabite izračunanega stolpca.

Ko določite formulo za eksplicitno mero, se nič ne zgodi, dokler ne dodate mero v vrtilni tabeli. Ko dodate merilo, formula je ovrednoten za vsako celico v območju vrednosti v vrtilni tabeli. Ker rezultat je ustvarjen za vsako kombinacijo glave vrstic in stolpcev, je lahko rezultat za mero različne v vsaki celici.

Definicija mere, ki jih ustvarite je shranjeno s svojo izvorno tabelo s podatki. Prikaže na seznamu polj vrtilne tabele in je na voljo vsem uporabnikom delovnega zvezka.

Če želite več podrobnosti, si oglejte mere v Dodatku Power Pivot.

Ustvarjanje formul z vnosno vrstico

Tako kot Excel tudi Power Pivot ponuja vnosno vrstico, ki omogoča lažje ustvarjanje in urejanje formul, ter funkcijo za samodokončanje, ki zmanjšuje tipkarske napake in napake v sintaksi.

Vnos imena tabele   Začnite vnašati ime tabele. Funkcija za samodokončanje formule ponudi spustni seznam, na katerem so navedena veljavna imena, ki se začnejo s temi črkami.

Vnos imena stolpca   Vnesite oklepaj in izberite stolpec s seznama stolpcev v trenutni tabeli. Če želite vnesti stolpec iz druge tabele, začnite vnašati prve črke imena tabele in nato izberite stolpec s spustnega seznama, ki ga ponudi funkcija za samodokončanje.

Za več podrobnosti in predstavitev ustvarjanja formul glejte Ustvarjanje formul za izračune v orodju Power Pivot.

Nasveti za uporabo funkcije za samodokončanje

Funkcijo za samodokončanje formule lahko uporabite sredi obstoječe formule z ugnezdenimi funkcijami. Besedilo tik pred vstavitveno točko se uporabi za prikaz vrednosti na spustnem seznamu, celotno besedilo za vstavitveno točko pa ostane nespremenjeno.

Določena imena, ki jih ustvarite za konstante, se ne prikažejo na spustnem seznamu funkcije za dokončanje, vendar jih lahko kljub temu vnesete.

Power Pivot ne doda zaklepaja funkcij oziroma samodejno ne vstavi ustreznega oklepaja. Za vsako funkcijo se prepričajte, ali ima pravilno sintakso, sicer formule ne boste mogli shraniti ali je uporabljati. 

Uporaba več funkcij v formuli

Funkcije, lahko ugnezdite, kar pomeni, da lahko rezultate iz ene funkcije uporabite kot argument za drugo funkcijo. V izračunane stolpce lahko ugnezdite do 64 ravni funkcij. Vendar pa lahko gnezdenje oteži ustvarjanje formul ali odpravljanje težav z njimi.

Številne funkcije DAX so oblikovane z namenom, da bodo uporabljene samo kot ugnezdene funkcije. Te funkcije vrnejo tabelo, ki je ni mogoče shraniti neposredno kot rezultat; uporabi se kot vnos v funkcijo tabele. Funkcije SUMX, AVERAGEX in MINX na primer vse zahtevajo tabelo za prvi argument.

Opomba : Nekatere omejitve glede gnezdenja funkcij obstajajo znotraj mere, če želite zagotoviti, da učinkovitost ne vplivajo številni izračuni, ki zahtevajo odvisnosti med stolpci.

Primerjava funkcij DAX in funkcij v Excelu

Knjižnica funkcij DAX temelji na knjižnici Excelovih funkcij, vendar je med obema knjižnicama več razlik. Ta razdelek vsebuje povzetek razlik in podobnosti med funkcijami v Excelu in funkcijami DAX.

  • Številne funkcije DAX imajo isto ime in na splošno delujejo enako kot Excelove funkcije, vendar so bile spremenjene, tako da sprejmejo drugačne vrste vnosov, in v nekaterih primerih lahko vrnejo tudi drugačne vrste podatkov. Na splošno funkcij DAX ne morete uporabiti v Excelovi , Excelovih formul pa ne morete nespremenjenih uporabiti v orodju Power Pivot.

  • Funkcije DAX se nikoli ne sklicujejo na celice ali obseg, ampak vedno na stolpec ali tabelo.

  • Funkciji datuma in časa v formulah DAX vrneta podatkovni tip datetime. Če to primerjamo s funkcijama datuma in časa v Excelu, ti tam vrneta celo število, ki predstavi datum kot serijsko številko.

  • Mnoge od novih funkcij DAX vrnejo tabelo vrednosti ali izvedejo izračune na podlagi tabele vrednosti, ki je izbrana kot vnos. Excel za razliko od tega nima funkcij, ki bi vrnile tabelo, ima pa nekaj funkcij, ki lahko delajo s polji. Možnost uporabe celotnih tabel in stolpcev kot sklicev je novost v orodju Power Pivot.

  • DAX ponuja nove funkcije za iskanje, ki so podobne funkcijam iskanja polj in vektorjev v Excelu. Vendar funkcije DAX zahtevajo, da je med tabelami vzpostavljena relacija.

  • Podatki v stolpcu morajo biti vedno istega podatkovnega tipa. Če podatki niso istega tipa, DAX spremeni celoten stolpec, tako da izbere podatkovni tip, ki najbolje ustreza vsem vrednostim.

Podatkovni tipi DAX

Podatke lahko uvozite v podatkovni model v orodju Power Pivot iz številnih različnih virov podatkov, ki lahko podpirajo različne podatkovne tipe. Ko uvozite podatke ali jih naložite in jih nato uporabite v izračunih ali v vrtilnih tabelah, se podatki pretvorijo v enega od podatkovnih tipov orodja Power Pivot. Seznam podatkovnih tipov najdete v razdelku Podatkovni tipi v podatkovnih modelih.

Podatkovni tip tabele je nov podatkovni tip v jeziku DAX, ki se uporablja za vhodne ali izhodne podatke v številnih novih funkcijah. Funkcija FILTER na primer vzame tabelo kot vhodno vrednost, izhodna vrednost pa je druga tabela, ki vsebuje samo vrstice, ki ustrezajo pogojem filtra. S kombinacijo funkcij tabele in združevalnih funkcij lahko izvedete zapletene izračune na podlagi dinamično opredeljenih naborov podatkov. Če želite več informacij, glejte Združevanja v orodju Power Pivot.

Formule in relacijski model

V oknu Power Pivot je območje, kjer lahko delo z več tabelami podatkov in povezovanje tabele v relacijski model. V ta podatkovni model, tabele so med seboj povezani z odnosi, katerimi se lahko ustvarite korelacije s stolpci v drugih tabelah in bolj zanimiv izračune. Na primer, lahko ustvarite formule to seštevanje vrednosti za povezano tabelo in nato shranite ta vrednost v eni celici. Ali, če želite nadzorovati vrstice v povezani tabeli, lahko uporabite filtre tabel in stolpcev. Če želite več informacij, si oglejte relacije med tabelami v podatkovnem modelu.

Ker lahko tabele povežete z relacijami, lahko vrtilne tabele vključujejo tudi podatke iz več stolpcev iz različnih tabel.

Vendar pa morate izračune oblikovati drugače, kot to počnete v Excelu, ker lahko formule uporabljajo celotne tabele in stolpce.

  • Na splošno se formula DAX v stolpcu vedno uporabi za celoten nabor vrednosti v stolpcu (nikoli za samo nekaj vrstic ali celic).

  • Tabele v orodju Power Pivot morajo vedno imeti isto število stolpcev v vsaki vrstici in vse vrstice v stolpcu morajo vsebovati isti podatkovni tip.

  • Kadar so tabele povezane z relacijo, morate zagotoviti, da stolpca, ki se uporabljata kot ključa, vsebujeta ujemajoče se vrednosti – vsaj v večjem delu. Ker Power Pivot ne zahteva referenčne integritete, je mogoče ustvariti relacijo, tudi če so v stolpcu s ključem vrednosti, ki se ne ujemajo. Vendar pa lahko prisotnost prazne ali neujemajoče se vrednosti vpliva na rezultate formul in videz vrtilnih tabel. Če želite več informacij, glejte Iskanja v formulah Power Pivot.

  • Ko tabele povežete z odnosi, jih povečate obseg ali context , v katerem se ovrednotijo formul. Primer formule v vrtilni tabeli lahko vpliva vse filtre ali glave stolpcev in vrstic v vrtilni tabeli. Pišete lahko formule, ki manipuliranje konteksta, vendar kontekst lahko povzroči tudi rezultate, če želite spremeniti na načine, ki morda ne pričakujete. Če želite več informacij, glejte kontekst v formulah jezika DAX.

Posodabljanje rezultatov formul

Podatki r eži in ponovno računanje so dve ločeno, vendar sorodne operacije, da boste razumeli, ko načrtujete podatkovni model, ki vsebuje zapletenih formul, velike količine podatkov ali podatkov, ki je pridobljeni iz zunanjih virov podatkov.

Osveževanje podatkov je postopek posodabljanja podatkov v vašem delovnem zvezku z novimi podatki iz zunanjega vira podatkov. Podatke lahko osvežujete ročno v časovnih obdobjih, ki jih sami izberete. Če ste delovni zvezek objavili na spletnem mestu SharePoint, pa lahko nastavite razpored samodejnega osveževanje iz zunanjih virov.

Preračunavanje je postopek posodabljanja rezultatov formul, ki odraža vse spremembe formul in spremembe v temeljnih podatkih. Preračunavanje lahko vpliva na učinkovitost na te načine:

  • Za izračunani stolpec je treba ob vsaki spremembi formule preračunati rezultat formule za celoten stolpec.

  • Za mere, rezultati formule niso izračunane dokler ukrep je postavljeno v okviru vrtilne tabele ali vrtilnega grafikona. Formula bo izračunan tudi, ko spremenite vse vrstice ali stolpca, ki vpliva na filtre za podatke ali jih ročno osvežitev vrtilne tabele.

Odpravljanje težav s formulami

Napake pri pisanju formul

Če pri določanju formule prejmete sporočilo o napaki, je v formuli morda sintaktična napaka, semantična napaka ali računska napaka.

Najlažje odpravite sintaktične napake. Pri teh napakah po navadi manjkata oklepaj ali vejica. Če želite pomoč pri sintaksi posameznih funkcij, glejte sklice funkcije DAX.

Pri drugi vrsti napake je sintaksa po navadi pravilna, vendar vrednost ali sklicevan stolpec nimata smisla v kontekstu formule. Za tovrstne semantične in računske napake so lahko krive te težave:

  • Formula se sklicuje na stolpec, tabelo ali funkcijo, ki ne obstaja.

  • Formula je videti pravilna, toda ko podatkovni mehanizem dobi podatke, pride do neujemanja vrste in s tem do napake.

  • Formula pošlje funkciji napačno število ali vrsto parametrov.

  • Formula se sklicuje na drug stolpec, v katerem je napaka, zato vrednosti niso veljavne.

  • Formula se sklicuje na stolpec, ki ni bil obdelan, to pomeni, da so v njem metapodatki, ni pa dejanskih podatkov za izračune.

V prvih štirih primerih DAX označi celoten stolpec, v katerem je neveljavna formula. V zadnjem primeru DAX zatemni stolpec, kar označuje, da stolpec ni obdelan.

Napačni ali nenavadni rezultati pri razvrščanju vrednosti stolpcev

Pri razvrščanju stolpca, v katerem je vrednost »ni številka« (NaN), boste morda prejeli napačne ali nepričakovane rezultate. Če pri računanju na primer 0 delite z 0, je vrnjen rezultat NaN.

Do tega pride zato, ker mehanizem formule razvršča tako, da primerja številske vrednosti. Toda vrednosti NaN ni mogoče primerjati z drugimi števili v stolpcu.

Če želite zagotoviti pravilne rezultate, lahko uporabite pogojne stavke s funkcijo IF, s katero preverite vrednosti NaN in vrnjene številčne vrednosti 0.

Združljivost s tabelarnimi modeli storitev Analysis Services in načinom DirectQuery

Na splošno so formule DAX, ki jih ustvarite v orodju Power Pivot, povsem združljive s tabelarnimi modeli storitev Analysis Services. Če pa model iz orodja Power Pivot preselite v primerek storitev Analysis Services in ga nato uvedete v načinu DirectQuery, velja nekaj omejitev.

  • Nekatere formule DAX lahko vrnejo drugačne rezultate, če model uvedete v način DirectQuery.

  • Nekatere formule lahko povzročijo napake pri preverjanju, če model uvedete v način DirectQuery, saj formula vsebuje funkcijo DAX, ki ni podprta za relacijski vir podatkov.

Če želite več informacij, glejte dokumentacijo tabelarnega modeliranja v storitvah Analysis Services, ki je na voljo v storitvi SQL Server 2012 BooksOnline.

Opomba : Strojni prevod – zavrnitev odgovornosti: Ta članek je bil preveden z računalniškim programom brez človeškega posredovanja. Microsoft skuša s strojno prevedenimi članki vsebino o Microsoftovih izdelkih, storitvah in tehnologijah približati osebam, ki ne razumejo angleščine. Ker je bil članek strojno preveden, so lahko v njem jezikovne, slovnične in pravopisne napake.

Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×