Īsā pamācība: valodas DAX pamatfunkciju apguve 30 minūtēs

Šī īsā pamācība ir paredzēta lietotājiem, kuri vēl nepārzina Power Pivot programmā Excel vai tabulāru modeļu projektus, kas izveidoti programmā SQL Server Data Tools. Tā ir paredzēta, lai sniegtu jums ātru un vienkāršu ievadu par to, kā izmantot datu analīzes izteiksmes (DAX), lai atrisinātu dažādas pamata datu modelēšanas un analītiskās problēmas. Šajā tēmā ir ietverta konceptuāla informācija, vairāki uzdevumi, kurus varat izpildīt, un dažas viktorīnas, lai pārbaudītu apgūto. Pēc šīs tēmas pabeigšanas jums ir jābūt gerai izpratnei par DAX pamatjēdzieniem.

Kas ir DAX?

DAX ir funkciju, operatoru un konstanšu kolekcija, ko var izmantot formulā vai izteiksmē, lai aprēķinātu un atgrieztu vienu vai vairākas vērtības. Vienkāršāk sakot, DAX palīdz izveidot jaunu informāciju no datiem, kas jau ir jūsu modelī.

Kāpēc DAX ir tik svarīgs?

Ir viegli izveidot darbgrāmatu un importēt tajā datus datus. Varat pat izveidot rakurstabulas vai rakursdiagrammas, kurās tiek parādīta svarīga informācija, neizmantojot DAX formulas. Taču, ko darīt, ja nepieciešams analizēt kritiskus pārdošanas datus vairākās produktu kategorijās un dažādos datumu diapazonos? Vai arī jums ir jāapvieno svarīgi inventāra dati no vairākām tabulām dažādos datu avotos? DAX formulas nodrošina šo iespēju, kā arī daudzas citas svarīgas iespējas. Zinot, kā izveidot efektīvas DAX formulas, varēsit izmantot visas datu iespējas. Kad esat saņēmis nepieciešamo informāciju, jūs varat sākt risināt reālas biznesa problēmas, kas ietekmē jūsu peļņu. Tā ir biznesa informācija, un DAX palīdzēs jums to sasniegt.

Priekšnosacījumi

Iespējams, jūs jau esat iepazinies ar formulu izveidi programmā Microsoft Excel. Šīs zināšanas būs noderīgas, lai izprastu DAX, bet pat tad, ja jums nav pieredzes darbā ar Excel formulām, šeit aprakstītie jēdzieni palīdzēs jums nekavējoties sākt veidot DAX formulas un risināt reālas BI problēmas.

Mēs īpaši koncentrēsimies uz izpratni par DAX formulām, kas tiek izmantotas aprēķinos. Jums jau ir jāpārzina aprēķināto kolonnu un mēru (dēvēti arī par aprēķinātajiem laukiem) pamatjēdzieni, kas abi ir aprakstīti Power Pivot palīdzībā. Jums arī jāpārzina Power Pivot Excel autorēšanas vidē un rīkos.

Darbgrāmatas piemērs

Vislabākais veids, kā apgūt DAX, ir izveidot dažas vienkāršas formulas, izmantot tās ar noteiktiem faktiskiem datiem un pašiem skatīt rezultātus. Šeit sniegtajos piemēros un uzdevumos ir izmantots Contoso parauga DAX Formulas.xlsx darbgrāmata. Darbgrāmatu var lejupielādēt no http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409. Kad darbgrāmata ir lejupielādēta datorā, atveriet to un pēc tam atveriet Power Pivot logu.

Sāksim!

DAX veidosim atbilstoši trim ļoti svarīgiem pamatjēdzieniem: sintakse, funkcijas un konteksts. Protams, DAX ir arī citi svarīgi jēdzieni, bet šo trīs jēdzienu izpratne nodrošinās labāko pamatu DAX prasmju attīstīšanai.

Sintakse

Pirms veidojat savas formulas, apskatīsim DAX formulas sintaksi. Sintakse ietver dažādus elementus, kas veido formulu, vai, vienkāršāk sakot, kā formula ir rakstīta. Piemēram, aplūkosim vienkāršu DAX formulu, kas tiek izmantota, lai izveidotu jaunus datus (vērtības) katrai rindai aprēķinātajā kolonnā ar nosaukumu Margin tabulā FactSales: (formulas teksta krāsas ir paredzētas tikai ilustratīviem nolūkiem)

Aprēķinātās kolonnas formula

Šīs formulas sintaksē ietilpst šādi elementi:

  1. Vienādības zīmes operators (=) norāda formulas sākumu, un, kad šī formula tiek aprēķināta, tā atgriež rezultātu vai vērtību. Visas formulas, ar kurām tiek aprēķināta vērtība, sākas ar vienādības zīmi.
  2. Atsauces kolonnā [SalesAmount] ir vērtības, no kurām mēs vēlamies atņemt. Kolonnas atsauce formulā vienmēr tiek iekļauta iekavās []. Atšķirībā no Excel formulām, kas atsaucas uz šūnu, DAX formula vienmēr atsaucas uz kolonnu.
  3. Atņemšanas (-) matemātiskais operators.
  4. Atsauces kolonnā [TotalCost] ir vērtības, kas jāatņem no kolonnas [SalesAmount] vērtībām.

Mēģinot saprast, kā lasīt DAX formulu, bieži ir noderīgi katru elementu sadalīt valodā, kuru domājat un runājat katru dienu. Piemēram, šo formulu var lasīt šādi:

Tabulā FactSales, katrai kolonnas Margin calculated column rindai aprēķiniet (=) vērtību, no kolonnas [SalesAmount] vērtībām atņemot (-) vērtības.

Apskatīsim cita veida formulu, kas tiek izmantota mērā:

Aprēķinātās kolonnas formula

Šī formula ietver šādus sintakses elementus:

  1. Mēra nosaukums Pārdošanas summas summa. Mēru formulās var iekļaut mēra nosaukumu, kam seko kols un aprēķina formula.
  2. Vienādības zīmes operators (=) norāda aprēķina formulas sākumu. Kad tiek aprēķināts, tas atgriezīs rezultātu.
  3. Funkcija SUM summē visus kolonnas [SalesAmount] skaitļus. Vairāk par funkcijām uzzināsit vēlāk.
  4. Iekavās () ir ietverts viens vai vairāki argumenti. Visām funkcijām nepieciešams vismaz viens arguments. Arguments nodod vērtību funkcijai.
  5. Atsauces tabula FactSales.
  6. Atsauces kolonna [SalesAmount] tabulā FactSales. Izmantojot šo argumentu, funkcija SUM zina, kurā kolonnā jāapkopo SUM.

Šo formulu var lasīt šādi:

Mēram ar nosaukumu Pārdošanas summas summa aprēķiniet (=) vērtību SUMMU tabulas FactSalesTable kolonnā [SalesAmount].

Kad šis mērs tiek novietots vērtību nomešanas zonā rakurstabulas lauku sarakstā, tas aprēķina un atgriež vērtības, kas definētas katrai rakurstabulas šūnai, piemēram, ASV mobilie tālruņi.

Ievērojiet, ka šī formula atšķiras no formulas, ko izmantojām aprēķinātajai kolonnai Rezerve. Konkrēti mēs ieviesām funkciju SUM. Funkcijas ir iepriekš uzrakstītas formulas, kas atvieglo sarežģītu aprēķinu un manipulāciju veikšanu ar skaitļiem, datumiem, laiku, tekstu un citām funkcijām. Vairāk par funkcijām uzzināsit vēlāk.

Atšķirībā no iepriekš aprēķinātās kolonnas Norma, kolonnas [SalesAmount] priekšā ir tabula FactSales, kurā ietilpst kolonna. To dēvē par pilno kolonnas nosaukumu, jo tajā ir ietverts kolonnas nosaukums, pirms kura ir tabulas nosaukums. Kolonnām, uz kurām ir atsauces tajā pašā tabulā, formulā nav jāiekļauj tabulas nosaukums. Tādējādi garas formulas, kurās ir atsauces uz daudzām kolonnām, var padarīt īsākas un vieglāk lasāmas. Tomēr ir ieteicams vienmēr iekļaut tabulas nosaukumu mēru formulās, pat ja atrodaties vienā tabulā.

Piezīme

Ja tabulas nosaukumā ir atstarpes, rezervēti atslēgvārdi vai neatļautas rakstzīmes, tabulas nosaukums ir jāiekļauj vienpēdiņās. Tabulas nosaukums ir jāiekļauj pēdiņās, ja nosaukumā ir rakstzīmes, kas atrodas ārpus ANSI burtciparu rakstzīmju diapazona, neatkarīgi no tā, vai lokalizācija atbalsta rakstzīmju kopu.

Ir ļoti svarīgi, lai formulām būtu pareiza sintakse. Vairumā gadījumu, ja sintakse nav pareiza, tiks atgriezta sintakses kļūda. Citos gadījumos sintakse var būt pareiza, bet atgrieztās vērtības var nebūt tādas, kādas gaidījāt. Power Pivot (un SQL Server Data Tools) ietver IntelliSense — līdzekli, kas tiek izmantots, lai izveidotu sintaktiski pareizas formulas, palīdzot atlasīt pareizos elementus.

Izveidosim vienkāršu formulu. Šis uzdevums palīdzēs jums padziļināti izprast formulu sintaksi un to, kā IntelliSense līdzeklis formulu joslā var jums palīdzēt.

Uzdevums: vienkāršas aprēķinātās kolonnas formulas izveide

  1. Ja vēl neesat Power Pivot logā, programmas Excel Power Pivot lentē noklikšķiniet uz Power Pivot logs.
  2. Power Pivot logā noklikšķiniet uz tabulas (cilnes) FactSales .
  3. Ritiniet līdz labajai malējai kolonnai un pēc tam kolonnas galvenē noklikšķiniet uz Pievienot kolonnu.
  4. Noklikšķiniet uz formulu joslas modeļa noformētāja loga augšdaļā.
    PowerPivot formulu josla
    Tagad kursors ir redzams formulu joslā. Formulu joslā varat ierakstīt aprēķinātās kolonnas vai aprēķinātā lauka formulu.
    Aplūkosim trīs pogas formulu joslas kreisajā pusē.
    Formula bar
    Kad kursors formulu joslā ir aktīvs, šīs trīs pogas kļūst aktīvas. Kreisā poga, X, ir vienkārši atcelšanas poga. Turpiniet darbu un noklikšķiniet uz tā. Formulu joslā vairs netiek rādīts kursors, un poga Atcelt un atzīmes vairs netiek rādīta. Turpiniet darbu un vēlreiz noklikšķiniet formulu joslā. Poga Atcelt un atzīmes poga tagad atkal parādās. Tas nozīmē, ka esat gatavs sākt ievadīt formulu.
    Atzīmes poga ir poga Pārbaudīt formulu. Līdz brīdim, kad esat ievadījis formulu, tas veic nekādas funkcijas. Mēs pie tā atgriezīsimies pēc mazliet.
    Noklikšķiniet uz pogas Fx . Redzēsiet, ka parādās jauns dialoglodziņš; Dialoglodziņš Funkcijas ievietošana. Dialoglodziņš Funkcijas ievietošana ir vienkāršākais veids, kā sākt ievadīt DAX formulu. Nedaudz vēlāk formulā pievienosim funkciju, kad izveidosim mēru, bet pagaidām funkcija nav jāpievieno aprēķinātās kolonnas formulai. Turpiniet darbu un aizveriet dialoglodziņu Funkcijas ievietošana.
  5. Formulas joslā ierakstiet vienādības zīmi =, pēc tam ierakstiet atverošās iekavas [. Tiks parādīts neliels logs ar visām kolonnām tabulā FactSales. Tā ir IntelliSense darbībā.
    Tā kā aprēķinātās kolonnas vienmēr tiek izveidotas aktīvajā tabulā, kurā atrodaties, nav nepieciešams kolonnas nosaukuma sākumā pievienot tabulas nosaukumu. Turpiniet un ritiniet uz leju un pēc tam veiciet dubultklikšķi uz [PārdevesDaudzums]. Varat arī ritināt līdz vajadzīgajam kolonnas nosaukumam un pēc tam nospiest taustiņu Tab.
    Tagad kursors ir aktīvs pa labi no [SalesQuantity].
  6. Ievadiet atstarpi un pēc tam ierakstiet atņemšanas operatoru (mīnuszīmi) un pēc tam vēl vienu atstarpi.
  7. Tagad ierakstiet citu atverošo iekavu [. Šoreiz atlasiet kolonnu [Atgriešanas_daudzums] un pēc tam nospiediet taustiņu Enter.
    Ja saņemat kļūdas ziņojumu, rūpīgi pārskatiet tās sintaksi. Ja nepieciešams, salīdziniet to ar formulu iepriekš aprakstītajā aprēķinātajā piemaļu kolonnā.
    Kad nospiežat taustiņu Enter, lai pabeigtu formulu, statusa joslā Power Pivot loga apakšdaļā parādās vārds Aprēķināt. Tas notiek ātri, pat ja tikko aprēķinājāt jaunas vērtības vairāk nekā trīs miljoniem rindu.
  8. Ar peles labo pogu noklikšķiniet kolonnas galvenē un pārdēvējiet kolonnu par NetoPārdošana.

Tas arī viss! Jūs izveidojāt vienkāršu, bet ļoti jaudīgu DAX formulu. Katrai tabulas FactSales rindai NetoSales formula aprēķina vērtību, atņemot vērtību kolonnā [Atgriešanas_daudzums] no vērtības kolonnā [Pārdošanas_daudzums]. Ievērojiet, kā mēs tikko teicām "Katrai rindai". Tas ir ieskats citā ļoti svarīgā DAX koncepcijā; Rindas konteksts. Vēlāk uzzināsit vairāk par rindas kontekstu.

Rakstot operatoru DAX formulā, ļoti svarīgi ir saprast izmantoto argumentu datu tipu. Piemēram, ja ierakstītu šādu formulu = 1 & 2, atgrieztā vērtība būtu teksta vērtība "12". Tas ir tāpēc, ka operators "ampersand" (&) ir paredzēts teksta konkatenācijai. DAX interpretē šo formulu šādi: Aprēķiniet rezultātu, pārņemot vērtību 1 kā tekstu un pievienojot vērtību 2 kā tekstu. Ja jūs ierakstītu = 1 + 2, DAX lasa šo formulu šādi: Aprēķiniet rezultātu, ņemot skaitlisko vērtību 1 un pievienojot skaitlisko vērtību 2. Rezultāts, protams, ir "3", kas ir skaitliska vērtība. DAX aprēķina rezultāta vērtības atkarībā no operatora formulā, nevis pamatojoties uz argumentā izmantoto kolonnu datu tipu. Datu tipi DAX ir ļoti svarīgi, taču tie neietilpst īsajā pamācībā. Lai uzzinātu vairāk par datu tipiem un operatoriem DAX formulās, skatiet DAX atsauci (http://go.microsoft.com/fwlink/?LinkId=239769&clcid=0x409) grāmatās Online.

Pamēģināsim citu. Šajā reizē mērvienību izveidosit, ierakstot formulu un izmantojot IntelliSense. Nesatraucieties, ja neesat pilnībā izpratis formulu. Svarīgi ir iemācīties izveidot formulu, pareizā sintaksē izmantojot vairākus elementus kopā.

Uzdevums: Measure formulas izveide

  1. Tabulā FactSales noklikšķiniet jebkurā tukšā aprēķinu apgabala šūnā. Šis ir tukšo šūnu apgabals tieši zem tabulas Power Pivot logā.

PowerPivot aprēķinu apgabals

  1. Formulu joslā ierakstiet nosaukumu Iepriekšējā ceturkšņa pārdošana:.
  2. Lai sāktu aprēķina formulu, ierakstiet vienādības zīmi =.
  3. Ierakstiet dažus pirmos burtus CAL un pēc tam veiciet dubultklikšķi uz funkcijas, kuru vēlaties lietot. Šajā formulā jāizmanto funkcija APRĒĶINĀT.
  4. Ierakstiet atverošās iekavas (lai sāktu argumentus, kas jānodod funkcijai CALCULATE.
    Ņemiet vērā, ka pēc atverošās iekavas ievadīšanas IntelliSense parāda funkcijas CALCULATE argumentus. Jūs uzzināsiet par argumentiem mazliet.
  5. Ierakstiet dažus pirmos tabulas FactSales burtus un pēc tam nolaižamajā sarakstā veiciet dubultklikšķi uz FactSales[Sales].
  6. Ierakstiet komatu (,), lai norādītu pirmo filtru, pēc tam ierakstiet PRE un veiciet dubultklikšķi uz funkcijas PREVIOUSQUARTER .
    Pēc funkcijas PREVIOUSQUARTER atlases tiek parādīta vēl viena atverošā iekava, kas norāda, ka ir nepieciešams cits arguments. šoreiz funkcijai PREVIOUSQUARTER.
  7. Ierakstiet dažus pirmos burtus Dim un pēc tam veiciet dubultklikšķi uz DimDate[DateKey].
  8. Aizveriet argumentu, kas tiek nodots funkcijai PREVIOUSQUARTER, un funkcijai CALCULATE, ierakstot divas aizverošās iekavas ()).
    Tagad jūsu formulai ir jāizskatās šādi:
    Iepriekšējā ceturkšņa pārdošana:=CALCULATE(FactSales[Sales], PREVIOUSQUARTER(DimDate[DateKey]))
  9. Formulu joslā noklikšķiniet uz pogas Pārbaudīt formulu, lai validētu formulu. Ja saņemat kļūdas ziņojumu, pārbaudiet katru sintakses elementu.

Jūs to izdarījāt! Jūs tikko izveidojāt rādītāju, izmantojot DAX, un tas nav viegli. Šīs formulas uzdevums ir aprēķināt iepriekšējā ceturkšņa kopējos pārdošanas datus atkarībā no rakurstabulā vai rakursdiagrammā lietotajiem filtriem.

Jūs tikko tikāt iepazīstināts ar vairākiem svarīgiem DAX formulu aspektiem. Pirmkārt, formulā bija iekļautas divas funkcijas. Ievērojiet, ka funkcija PREVIOUSQUARTER ir ligzdota kā funkcijai CALCULATE nodots arguments. DAX formulās var būt līdz 64 ligzdotām funkcijām. Maz ticams, ka formulā kādreiz būtu tik daudz ligzdotu funkciju. Patiesībā šādu formulu būtu ļoti grūti izveidot un atkļūdot, un, iespējams, arī tas nebūtu ļoti ātri.

Šajā formulā tika izmantoti arī filtri. Filtri sašaurina to, kas tiks aprēķināts. Šajā gadījumā kā argumentu ir atlasīts viens filtrs, kas faktiski ir cita funkcija. Par filtriem uzzināsit vēlāk.

Visbeidzot, jūs izmantojāt funkciju APRĒĶINĀT. Šī ir viena no visefektīvākajām DAX funkcijām. Veidojot datu modeļus un izveidojot sarežģītākas formulas, šo funkciju, visticamāk, izmantosit daudzkārt. Funkcijas CALCULATE apspriešana nav šīs īsās pamācības mērķis, bet, pieaugot zināšanām par DAX, pievērsiet īpašu uzmanību šai tēmai.

Piezīme

Parasti, lai DAX formulās izmantotu laika informācijas funkcijas, ir jānorāda unikāla datumu kolonna, izmantojot dialoglodziņu Atzīmēt kā datumu tabulu. Contoso DAX formulas Samples.xlsx darbgrāmatā kolonna DateKey tabulā DimDate ir atlasīta kā unikālā datumu kolonna.

Papildu kredīts

Iespējams, jums rodas jautājums: "Kura ir vienkāršākā DAX formula, ko es varu izveidot?" Nu, atbilde uz to ir "formula, kas jums nav jādara". Un tieši to var paveikt, mērā izmantojot standarta apkopošanas funkciju. Gandrīz jebkuram datu modelim ir jāfiltrē un jāaprēķina apkopotie dati. Piemēram, funkcija SUM mērā PārdSumma iepriekš tiek izmantota, lai saskaitītu visus skaitļus noteiktā kolonnā. DAX ietver arī vairākas citas funkcijas, kas apkopo vērtības. Varat automātiski izveidot formulas, izmantojot standarta apkopojumus un izmantojot automātiskās summēšanas līdzekli.

Papildu kredīta uzdevums: Measure formulas izveide, izmantojot automātiskās summēšanas līdzekli

  1. Tabulā FactSales ritiniet līdz kolonnai ReturnQuantity un pēc tam noklikšķiniet uz kolonnas galvenes, lai atlasītu visu kolonnu.
  2. Cilnes Sākumslentes grupā Aprēķini noklikšķiniet uz pogas Automātiskā summēšana .

Līdzeklis Automātiskā summa pievienojumprogrammā PowerPivot

Noklikšķiniet uz lejupvērstās bultiņas blakus Automātiskā summēšana un pēc tam noklikšķiniet uz Vidējais ( ņemiet vērā arī citas standarta apkopošanas funkcijas, kuras varat izmantot).

Tūlīt tiek izveidots jauns mērs ar nosaukumu Average of ReturnQuantity: kam seko formula =AVERAGE([ReturnQuantity]).

Tagad tas nebija vienkārši? Protams, ne visas jūsu izveidotās formulas būs tik vienkāršas. Tomēr, izmantojot automātiskās summēšanas līdzekli, varat izveidot ātras un vienkāršas formulas, izmantojot standarta apkopošanas aprēķinus.

Tam vajadzētu sniegt diezgan labu izpratni par DAX formulās izmantoto sintaksi. Jūs tikāt iepazīstināts arī ar dažiem patiešām lieliskiem līdzekļiem, piemēram, IntelliSense un AutoSum, kas palīdz ātri, vienkārši un precīzi izveidot formulas. Protams, par sintaksi var uzzināt vēl daudz. Laba vieta, kur iegūt papildinformāciju, ir DAX uzziņas vai SQL Books Online.

Sintakse: QuickQuiz

  1. Kādu funkciju veic šī poga formulu joslā?
    Funkciju poga
  2. Kas DAX formulā vienmēr ietver kolonnas nosaukumu?
  3. Kā rakstīt formulu šādiem elementiem:
    Aprēķināt tabulas DimProduct katrai rindai aprēķinātajā kolonnā UnitMargin vērtību, no kolonnas UnitPrice vērtībām atņemot vērtības, kas atrodas kolonnā UnitPrice?

Atbildes ir sniegtas šīs tēmas beigās.

Funkcijas

Funkcijas ir iepriekšdefinētas formulas, kuras īpašā secībā vai struktūrā veic aprēķinus, izmantojot īpašas vērtības, kas tiek sauktas par argumentiem. Argumenti var būt citas funkcijas, cita formula, kolonnu atsauces, skaitļi, teksts, loģiskās vērtības, piemēram, TRUE vai FALSE, vai konstantes.

DAX ietver šādas funkciju kategorijas: datuma un laika, informācijas, loģiskās, matemātiskās, statistikas, teksta un laika informācijas funkcijas. Ja pārzināt Excel formulu funkcijas, daudzas DAX funkcijas izskatīsies līdzīgas jums; Tomēr DAX funkcijas ir unikālas tālāk norādītajos veidos.

  • DAX funkcija vienmēr atsaucas uz pilnu kolonnu vai tabulu. Ja vēlaties izmantot tikai konkrētas vērtības no tabulas vai kolonnas, varat pievienot filtrus formulai.
  • Ja aprēķini ir jāpielāgo pa rindai, DAX nodrošina funkcijas, kas ļauj izmantot pašreizējo rindas vērtību vai saistīto vērtību kā argumentu, lai veiktu aprēķinus, kas atšķiras atkarībā no konteksta. Papildinformāciju par kontekstu uzzināsit vēlāk.
  • DAX ietver daudzas funkcijas, kas atgriež tabulu, nevis vērtību. Tabula netiek parādīta, bet tiek izmantota, lai nodrošinātu ievadi citām funkcijām. Piemēram, varat izgūt tabulu un pēc tam saskaitīt tajā esošās atšķirīgās vērtības vai aprēķināt dinamiskas summas filtrētās tabulās vai kolonnās.
  • DAX ietver dažādas laika informācijas funkcijas. Šīs funkcijas ļauj definēt vai atlasīt datumu diapazonus un veikt dinamiskus aprēķinus, pamatojoties uz tiem. Piemēram, var salīdzināt summas paralēlos periodos.

Dažkārt ir grūti noteikt, kuras funkcijas jāizmanto formulā. Power Pivot un tabulārais modeļu noformētājs programmā SQL Server Data Tools ietver līdzekli Funkcijas ievietošana — dialoglodziņu, kas palīdz atlasīt funkcijas pēc kategorijas un nodrošina īsu aprakstu par katru funkciju.

Funkcijas ievietošana

Izveidosim jaunu formulu, kurā ir funkcija, ko atlasīsit, izmantojot funkcijas ievietošanas līdzekli:

Uzdevums: funkcijas pievienošana formulai, izmantojot funkcijas ievietošanu

  1. Tabulā FactSales ritiniet līdz labajai malējai kolonnai un pēc tam kolonnas galvenē noklikšķiniet uz Pievienot kolonnu.
  2. Formulas joslā ierakstiet vienādības zīmi =.
  3. Noklikšķiniet uz pogas Ievietot funkciju . Funkcijas ievietošana Tiek atvērts dialoglodziņš Funkcijas ievietošana .
  4. Dialoglodziņā Funkcijas ievietošana noklikšķiniet uz sarakstlodziņa Atlasīt kategoriju . Pēc noklusējuma ir atlasīts Viss , un tālāk ir uzskaitītas visas funkcijas kategorijā Visi . Tas ir daudz funkciju, tāpēc vēlēsities filtrēt funkcijas, lai būtu vieglāk atrast meklēto funkciju.
  5. Šai formulai jāatgriež dati, kas jau ir citā tabulā. Šim nolūkam jūs izmantosit funkciju kategorijā Filtrs. Turpiniet darbu un noklikšķiniet uz kategorijas Filtrs , pēc tam sadaļā Atlasīt funkciju ritiniet uz leju un veiciet dubultklikšķi uz funkcijas SAISTĪTS. Noklikšķiniet uz Labi , lai aizvērtu dialoglodziņu Funkcijas ievietošana .
  6. Izmantojiet IntelliSense, lai atrastu un atlasītu kolonnu DimChannel[ChannelName].
  7. Aizveriet formulu un nospiediet taustiņu Enter.
  8. Kad nospiežat taustiņu Enter, lai pabeigtu formulu, statusa joslā Power Pivot loga apakšdaļā parādās vārds Aprēķināt. Tagad redzēsit, ka tikko izveidojāt jaunu kolonnu tabulā FactSales ar kanāla informāciju no tabulas DimChannel.
  9. Pārdēvējiet kolonnu Kanāls.
    Jūsu formulai ir jāizskatās šādi: =RELATED(DimChannel[Kanāla_nosaukums])

Jūs tikko tikāt iepazīstināti ar citu ļoti svarīgu funkciju DAX, funkciju RELATED . Funkcija RELATED atgriež vērtības no citas tabulas. Varat izmantot RELATION, ja pastāv relācija starp tabulu, kurā pašlaik atrodaties, un tabulu, kurā atrodas vērtības, kuras vēlaties iegūt. Protams, funkcijai RELATED ir milzīgas iespējas. Šajā gadījumā tagad varat iekļaut pārdošanas kanālu katram pārdošanas darījumam tabulā FactSales. Tagad varat paslēpt DimChannel tabulu no rakurstabulas lauku saraksta, atvieglojot navigāciju un redzot tikai vissvarīgāko informāciju, kas jums patiešām nepieciešama. Līdzīgi kā iepriekš aprakstītā funkcija CALCULATE funkcija RELATED ir ļoti svarīga un to izmantosit visticamāk vairākas reizes.

Kā redzat, DAX funkcijas var palīdzēt izveidot ļoti efektīvas formulas. Mēs patiešām pieskārāmies tikai funkciju pamatiem. Pilnveidojot DAX prasmes, būs jāveido formulas, izmantojot daudzas dažādas funkcijas. Viena no labākajām vietām, kur uzzināt detalizētu informāciju par visām DAX funkcijām, ir datu analīzes izteiksmju (Data Analysis Expressions — DAX) atsauce.

Ātrās viktorīnas funkcijas

  1. Uz ko vienmēr atsaucas funkcija?
  2. Vai formulā var būt vairākas funkcijas?
  3. Kādu funkciju kategoriju izmantotu, lai divas teksta virknes apvienotu vienā virknē?

Atbildes ir sniegtas šīs tēmas beigās.

Konteksts.

Konteksts ir viens no svarīgākajiem DAX jēdzieniem, kas jāizprot. DAX ir divu veidu konteksts: Rindas konteksts un filtra konteksts. Vispirms mēs apskatīsim rindas kontekstu.

Rindas konteksts

Rindas kontekstu visvieglāk uztver kā pašreizējo rindu. Piemēram, vai atceraties iepriekš redzēto kolonnu Aprēķinātā marža, kad mācījāties par sintaksi? Formula =[SalesAmount] - [TotalCost] aprēķina vērtību kolonnā Piemale katrai tabulas rindai. Katras rindas vērtības tiek aprēķinātas no vērtībām divās citās kolonnās — [SalesAmount] un [TotalCost] tajā pašā rindā. DAX var aprēķināt vērtības katrai rindai kolonnā Piemale, jo tam ir konteksts: Katrai rindai tiek ņemtas vērtības kolonnā [TotalCost] un atņemtas tās no vērtībām kolonnā [SalesAmount].

Tālāk parādītajā atlasītajā šūnā vērtība 49,54 EUR pašreizējā rindā tika aprēķināta, atņemot vērtību 51,54 $ kolonnā [TotalCost] no vērtības 101,08 $ kolonnā [SalesAmount].

Rindas konteksts pievienojumprogrammā PowerPivot

Rindas konteksts neattiecas tikai uz aprēķinātajām kolonnām. Rindas konteksts tiek lietots arī gadījumos, kad formulā ir funkcija, kas lieto filtrus, lai identificētu vienu rindu tabulā. Funkcija pēc būtības lieto rindas kontekstu katrai tabulas rindai, kurā tā filtrē. Šis rindas konteksta tips visbiežāk attiecas uz mēriem.

Filtra konteksts

Filtra kontekstu ir nedaudz grūtāk saprast nekā rindas kontekstu. Filtra kontekstu visvieglāk var uztvert kā: Viens vai vairāki filtri, kas tiek lietoti aprēķinā, kurš nosaka rezultātu vai vērtību.

Filtra konteksts nepastāv rindas konteksta vietā; Tas drīzāk tiek lietots papildus rindas kontekstam. Piemēram, lai vēl vairāk sašaurinātu aprēķinā iekļaujamās vērtības, varat lietot filtra kontekstu, kas ne tikai norāda rindas kontekstu, bet arī norāda tikai konkrētu vērtību (filtru) šīs rindas kontekstā.

Filtra konteksts ir viegli saskatāms rakurstabulās. Piemēram, kad pievienojat TotalCost apgabalam Vērtības un pēc tam pievienojat gadu un reģionu rindai vai kolonnām, jūs definējat filtra kontekstu, kas atlasa datu apakškopu, pamatojoties uz konkrēto gadu un reģionu.

Kāpēc filtra konteksts DAX ir tik svarīgs? Tā kā filtra kontekstu visvieglāk var lietot, pievienojot kolonnu un rindu etiķetes un datu griezumus rakurstabulā, filtra kontekstu var lietot arī DAX formulā, definējot filtru, izmantojot tādas funkcijas kā ALL, RELATED, FILTER, CALCULATE, BY relationships un pēc citiem mēriem un kolonnām. Piemēram, aplūkosim tālāk norādīto formulu mērā ar nosaukumu StoreSales:

Formula

Ir skaidrs, ka šī formula ir sarežģītāka nekā dažas citas formulas, ko esat redzējis. Tomēr, lai labāk izprastu šo formulu, varam to sadalīt līdzīgi tam, kā esam darījuši ar citām formulām.

Šī formula ietver šādus sintakses elementus:

  1. Mēra nosaukums StoreSales, kam seko kols :.
  2. Vienādības zīmes operators (=) norāda formulas sākumu.
  3. Funkcija CALCULATE novērtē izteiksmi kā argumentu kontekstā, kuru modificē norādītie filtri.
  4. Iekavās () ir ietverts viens vai vairāki argumenti.
  5. Mērs [Pārdošana] tajā pašā tabulā kā izteiksme. Pārdošanas mēram ir formula: =SUM(FactSales[SalesAmount]).
  6. Katru filtru atdala komats (,).
  7. Kolonna, uz kuru ir atsauce, un noteikta vērtība DimChannel[ChannelName] ="Store" kā filtrs.

Šī formula nodrošinās, ka tikai pārdošanas vērtības, ko definē pārdošanas mērs kā filtrs, tiek aprēķinātas tikai rindām kolonnā DimChannel[ChannelName] ar vērtību "Store" kā filtru.

Kā varat iedomāties, spēja definēt filtra kontekstu formulā sniedz milzīgas un jaudīgas iespējas. Iespēja saistītā tabulā sniegt atsauci tikai uz noteiktu vērtību ir tikai viens no šādiem piemēriem. Neuztraucieties, ja uzreiz pilnībā nesaprotat kontekstu. Veidojot savas formulas, labāk izpratīsit kontekstu un to, kāpēc tas ir tik svarīgs DAX.

Konteksta ātrā viktorīna

  1. Kādi ir divi konteksta veidi?
  2. Kas ir filtra konteksts?
  3. Kas ir rindas konteksts?

Atbildes ir sniegtas šīs tēmas beigās.

Kopsavilkums

Tagad, kad jums ir pamata izpratne par svarīgākajiem DAX jēdzieniem, varat patstāvīgi sākt veidot DAX formulas aprēķinātajām kolonnām un mēriem. Valodas DAX apguve patiešām var būt mazliet sarežģīta, bet jums ir pieejami daudzi resursi. Pēc tam, kad esat vairākas reizes izlasījis šo tēmu un izmēģinājis dažas savas formulas, varat uzzināt vairāk par citiem DAX jēdzieniem un formulām, kas var palīdzēt atrisināt jūsu uzņēmējdarbības problēmas. Daudzi DAX resursi ir pieejami Power Pivot palīdzībā, SQL Server grāmatas tiešsaistē, tehniskajos dokumentos un emuāros no Microsoft un vadošajiem BI profesionāļiem. DAX resursu centra vikivietne (http://social.technet.microsoft.com/wiki/contents/articles/dax-resource-center.aspx) ir lieliska vieta, kur sākt. Lielisks resurss ir arī datu analīzes izteiksmju (Data Analysis Expressions — DAX) atsauce . Noteikti saglabājiet to savā izlasē.

Lejupielādei pieejamais DAX BI tabulas modeļa tehniskais dokuments (http://go.microsoft.com/fwlink/?LinkID=237472&clcid=0x409) sniedz detalizētu pārskatu par šeit ieviestajiem jēdzieniem, kā arī daudzām citām papildu koncepcijām un formulām. Šajā tehniskajā dokumentā tiek izmantots arī tas pats Contoso DAX parauga Formulas.xlsx darbgrāmata, kas jums jau ir.

Ātrās viktorīnas atbildes

Sintakse:

  1. Atver līdzekli Ievietot funkciju.
  2. Iekavas [].
  3. =[Vienības_cena] - [Vienības_cena]

Funkcijas:

  1. Tabula un kolonna.
  2. Jā. Formulā var būt līdz 64 ligzdotām funkcijām.
  3. Teksta funkcijas.

Konteksts:

  1. Rindas konteksts un filtra konteksts.
  2. Viens vai vairāki filtri aprēķinā, kas nosaka vienu vērtību.
  3. Pašreizējā rinda.