DAX - Data Analysis Expressions
Formelspråket som används i Power BI heter DAX. Språket utgörs av ett stort antal funktioner med konstanter och operatorer vilka används i formler och uttryck för att beräkna ett eller flera värden. DAX skapar helt enkelt ny information utifrån data som redan finns i din datamodell.
Funktionerna i DAX delar vi in i följande grupper: DATETIME, FILTER, INFO, LOGICAL, MATHTRIG, PARENTCHILD, STATISTICAL, TEXT, TIMEINTELLIGENCE samt OTHER.
DAX Function: COUNTROWS / FILTER
Reference group: STATISTICAL / FILTER
Hur många kunder har du i ditt kundregister på en viss ort? För att ta reda på detta behöver du kombinera funktionerna COUNTROWS och FILTER.
COUNTROWS-funktionen räknar antalet rader i en tabell i din datamodell. Antal rader som räknas i tabellen styrs av definitionen i FILTER-funktionen.
COUNTROWS function (DAX)
COUNTROWS-funktionen returnerar antalet rader i en datatabell och eftersom det är antalet rader i hela tabellen som räknas skall ingen kolumn anges. Samtliga rader räknas oavsett om de innehåller data eller inte.
COUNTROWS generar inte en ny kolumn utan returnerar ett beräknat värde, ett så kallat Measure. Measures lagras inte i datamodellen utan beräknas vid varje tillfälle de anropas/används. Beroende på hur ett Measure används genereras olika resultat. Exempel på andra användningar av Measures kommer vi ta upp i andra bloggar.
Syntax: COUNTROWS(<table>)
FILTER function (DAX)
Med FILTER-funktionen begränsar du antalet rader i tabellen du vill göra en beräkning på. Du anger vilken tabell och kolumn samt vilket värde i kolumnen som skall begränsa tabellen. FILTER-funktionen kan användas tillsammans med en mängd andra funktioner vilket vi kommer att ta upp i andra bloggar.
Syntax: FILTER(<table>;<filter>)
COUNTROWS function (DAX) + FILTER function (DAX)
Kombinationen av COUNTROWS-funktionen och FILTER-funktionen är en användbar och vanlig kombination om man behöver räkna antalet av ett visst värde i en kolumn. Definitionen i FILTER-funktionen bestämmer resultatet.
Syntax: COUNTROWS (FILTER (<table>;<expression>))
I exemplen använder vi en tabell som heter KUND_ORT med 2 kolumner enligt nedan:
Exempel 1.
I exemplet räknar vi antal rader i tabellen KUND_ORT där kolumnen ORT innehåller Stockholm dvs hur många kunder har vi i Stockholm. Measure ”Antal KUNDER i Sthlm” används och innehåller resultatet.
Antal KUNDER i Sthlm = 4
För att beräkna ”Antal KUNDER i Sthlm” använder vi följande syntax:
Antal KUNDER i Sthlm = COUNTROWS(FILTER('KUND_ORT’; 'KUND_ORT’ [ORT]=”Stockholm”))
Exempel 2.
I exemplet räknar vi antal rader i tabellen KUND_ORT där Ort inte är Stockholm dvs hur många kunder har vi som inte finns i Stockholm. Measure ”Antal KUNDER utanför Sthlm” används och innehåller resultatet.
Antal KUNDER utanför Sthlm = 3
För att beräkna ”Antal KUNDER utanför Sthlm” använder vi följande syntax:
Antal KUNDER utanför Sthlm = COUNTROWS(FILTER('KUND_ORT’; 'KUND_ORT’ [ORT]<>”Stockholm”))
Flera STATISTICAL / FILTER funktioner (DAX)
Ovan har du fått exempel på hur du kan räkna antal rader i en tabell med COUNTROWS-funktionen i kombination med FILTER-funktionen. Det finns ytterligare 68 STATISTICAL- och 24 FILTER-funktioner i Power BI.
Vill du veta mer vilka STATISTICAL och FILTER-funktioner som finns i Power BI? Ladda då ner våra Power BI applikationer som visar alla STATISTICAL och FILTER-funktioner.
För att kunna använda Power BI applikationer behöver du ha Power BI Desktop installerad på din dator. Power BI Desktop är gratis och kan laddas ner här, https://powerbi.microsoft.com/sv-se/desktop/.
Vi kan naturligtvis hjälpa dig med installation och att komma igång med PBI.
Håll utkik efter ytterligare blogginlägg .......