DAX-funktioiden käyttäminen

Valmis

DAX-funktiokirjastossa on satoja funktioita, joista jokainen on suunniteltu tiettyä tarkoitusta varten.

DAX on peräisin Microsoft Excel 2010:n Power Pivot -apuohjelmasta, joten yli 80 käytettävissä olevaa funktiota sisältyy myös Exceliin. Taustalla oli Microsoftin tarkoituksellinen strategia, jolla varmistettiin, että Excelin käyttäjät pystyvät lisäämään tuottavuuttaan nopeasti DAX-funktioilla.

Kirjastossa on kuitenkin monia funktioita, jotka puuttuvat Excelistä, koska ne liittyvät nimenomaan tietojen mallinnukseen:

  • Suhteiden välisen siirtymisen funktiot
  • Suodatuskontekstin muokkausfunktiot
  • Iteraattorifunktiot
  • Aikatietofunktiot
  • Polkufunktiot

Vihje

Voit etsiä DAX-funktioon liittyviä ohjeita antamalla verkkohaussa avainsanan DAX ja funktion nimen.

Lisätietoja on DAX-funktioita käsittelevässä oppaassa.

Funktiot, jotka ovat peräisin Excelistä

Seuraavissa osioissa käydään läpi useita hyödyllisiä funktioita, jotka saatat jo tuntea, koska niitä käytetään Excelissä.

DAX-funktio IF testaa, täyttyykö ensimmäiseksi argumentiksi annettu ehto. Se palauttaa yhden arvon, jos ehdon arvo on TRUE, ja toisen arvon, jos ehdon arvo on FALSE. Funktion syntaksi on seuraava:

IF(<logical_test>, <value_if_true>[, <value_if_false>])

Vihje

Funktion argumentti on valinnainen, kun se on ohjeissa kirjoitettuna hakasulkeisiin.

Jos logical_test tuottaa arvon FALSE ja value_if_false-arvoa ei anneta, funktio palauttaa arvon BLANK.

Käytettävissä on monia Excelin yhteenvetofunktioita, kuten SUM, COUNT, AVERAGE, MIN, MAXja monia muita. Ainoa ero on, että DAX-kielessä välitetään sarakeviittaus, kun taas Excelissä välitetään solualue.

Monia Excelin matemaattisia funktioita, teksti-, päivämäärä ja aika- ja tietofunktioita sekä loogisia funktioita on myös käytettävissä. Esimerkiksi pieni esimerkki DAXissa käytettävissä olevista Excel-funktioista ovat ABS, , ROUND, SQRT, , LEFTLEN, RIGHT, , UPPER, DATE, YEAR, , MONTH, , NOW, TRUEISNUMBER, FALSE, AND, ORNOTja IFERROR.

Funktiot, jotka eivät ole peräisin Excelistä

Kaksi hyödyllistä DAX-funktiota, jotka eivät liity nimenomaan mallinnusta eivätkä ole peräisin Excelistä, ovat DISTINCTCOUNT ja DIVIDE.

DISTINCTCOUNT-funktio

DAX-funktiolla DISTINCTCOUNT voit laskea sarakkeen erillisten arvojen määrän. Tästä funktiosta on hyötyä erityisesti analytiikkaratkaisuissa. Ota huomioon, että asiakkaiden määrä poikkeaa erillisten asiakkaiden määrästä. Jälkimmäisessä ei lasketa toistuvia asiakkaita, joten kyseessä on asiakkaiden määrä verrattuna eri asiakkaiden määrään.

DIVIDE-funktio

Voit suorittaa jakolaskun DIVIDE DAX-funktiolla. Siinä on välitettävä osoittajan ja nimittäjän lausekkeet. Valinnaisesti voit välittää arvon, joka edustaa vaihtoehtoista tulosta. Funktion DIVIDE syntaksi on seuraava:

DIVIDE(<numerator>, <denominator>[, <alternate_result>])

Funktio DIVIDE käsittelee automaattisesti jakolaskun nollalla tapauksien mukaan. Jos vaihtoehtoista tulosta ei välitetä ja nimittäjä on nolla tai BLANK, funktio palauttaa arvon BLANK. Kun vaihtoehtoinen tulos välitetään, se palautetaan arvon BLANK asemesta.

Tämä funktio on kätevä, koska lausekkeen ei tarvitse ensin testata nimittäjän arvoa. Funktio on myös optimoitu paremmin nimittäjäarvon testaamiseen kuin IF funktio. Suorituskykyhyöty on huomattava, koska nollalla jakamisen tarkistus on kallista. Lisäksi funktion DIVIDE käyttäminen tuottaa tiiviimmän ja siistimmän lausekkeen.

Vihje

On suositeltavaa käyttää -funktiota DIVIDE aina, kun nimittäjä on lauseke, joka voi palauttaa nollan tai tyhjän. Jos nimittäjä on vakioarvo, on suositeltavaa käyttää jako-operaattoria (/), joka esitellään jäljempänä tässä moduulissa. Tällöin jakolasku onnistuu varmasti, ja lauseke toimii tehokkaammin, koska tarpeetonta testausta ei ole.