Contact us

Pošlji
povpraševanje

Zakladnica znanja

  • Predzanje

  • Kategorije

October 9, 2020

X-funkcije v jeziku DAX

Avtor: Branka Trifunović

V članku je uporabljen Power BI Desktop verzije 2.76.5678.782 (December 2019).

X-funkcije v jeziku DAX so iteratorske funkcije. To pomeni, da imajo lastnost zavedanja se vrstic. Npr. funkcija SUMX() izračuna vsoto izraza za vsako vrstico posebej. Več o vrstičnem kontekstu lahko preberemo v članku Vrstični kontekst v Power BI in Prehod konteksta v Power BI – pretvarjanje vrstičnega konteksta v filterni kontekst.

SUMX()

Izračuna vrednost izraza za vsako vrstico in vrne vsoto vrstic.

Sintaksa

SUMX(Table, Expression)

 

Parameter Opis
Table Ime tabele, znotraj katere se izraz izračuna za vsako vrstico
Expression Izraz

Primer

Imamo tabelo prodanih artiklov Sales s poljema Price in Quantity.

Izračunati želimo, kakšen je celoten prihodek od prodanih artiklov. Ne moremo uporabiti SUM(), saj moramo izračunati produkt za vsako vrstico posebej in nato vrstice sešteti v končni rezultat. To naredi SUMX().

SUMX_Example = SUMX(Sales, Sales[Price]*Sales[Quantity])

Za matematično podkovane bralce: SUMX() se v tem primeru obnaša kot skalarni produkt.

AVERAGEX()

Izračuna vrednost izraza za vse vrstice in vrednosti agregira v povprečje.

Sintaksa

AVERAGEX (Table, Expression)

Parameter Opis
Table Ime tabele, znotraj katere se izraz izračuna za vsako vrstico
Expression Izraz

Primer

AVERAGEX_Example = AVERAGEX(Sales, Sales[Price]*Sales[Quantity])

Zgornji primer izračuna izraz za vsako vrstico posebej in nato rezultate agregira v povprečje.

MINX()

Izračuna vrednost izraza za vse vrstice in vrne najmanjšo vrednost.

Sintaksa

MINX(Table, Expression)

Parameter Opis
Table Ime tabele, znotraj katere se izraz izračuna za vsako vrstico
Expression Izraz

Primer

MINX_Example = MINX(Sales, Sales[Price]*Sales[Quantity])

Zgornji primer izračuna produkt stolpcev Price in Quantity v tabeli Sales za vsako vrstico in vrne najmanjšo od vseh vrednosti.

MAXX()

Izračuna vrednost izraza za vse vrstice in vrne največjo vrednost.

Sintaksa

MAXX(Table, Expression)

Parameter Opis
Table Ime tabele, znotraj katere se izraz izračuna za vsako vrstico
Expression Izraz

Primer

MAXX_Example = MAXX(Sales, Sales[Price]*Sales[Quantity])

Zgornji primer izračuna produkt stolpcev Price in Quantity v tabeli Sales za vsako vrstico in vrne največjo od vseh vrednosti.

COUNTX()

Vrne število nepraznih vrstic v stolpcu ali število nepraznih rezultatov izraza.

Sintaksa

COUNTX(Table, Expression)

Parameter Opis
Table Tabela, znotraj katere štejemo neprazne vrstice ali neprazne rezultate izraza
Expression Izraz

Primer

COUNTX_Example = COUNT(Sales, Sales[Price]*Sales[Quantity])

Zgornji primer izračuna izraz za vsako vrstico posebej in vrne število nepraznih rezultatov.

CONCATENATEX ()

Ovrednoti vrednost izraza za vsako vrstico in vrne združene vrednosti.

Sintaksa

CONCATENATEX (Table, Expression, [Delimiter])

Parameter Opis
Table Tabela, znotraj katere želimo združen niz za dani izraz
Expression Izraz
Delimiter Ločilo, ki naj se uporabi med izrazi (opcijsko)

Primer

V tabeli Customers imamo stolpca FirstName in LastName.

Da dobimo seznam vseh strank, uporabimo funkcijo CONCATENATEX().

CONCATENATEX_Example = CONCATENATEX(Customers, [FirstName] & ” ” & [LastName], “,”)

Funkcija vrne rezultat “Craig Ferguson, James May”.

 

Kazalo