DAX-querys met behulp van variabelen en belangrijke functies

DAX-querys met behulp van variabelen en belangrijke functies

Deze tutorial gaat in op variabelen, inclusief de functies en CALCULATE . U begrijpt hoe deze de prestaties van uw DAX-query's verbeteren en nauwkeurige resultaten opleveren.

Variabelen moeten zoveel mogelijk worden gebruikt, omdat ze gemakkelijk codes voor optimalisatie kunnen vinden. Ze voorkomen dat u onjuiste uitvoer krijgt en besparen u tijd bij het zoeken naar de fout. Variabelen voorkomen echter soms dat een waarde opnieuw wordt berekend. Dus als ze eenmaal zijn gedefinieerd met een waarde, kan die waarde niet worden gewijzigd, zelfs niet door CALCULATE .

Het is belangrijk om te weten waar u variabelen moet definiëren en gebruiken, omdat het gebruik ervan binnen en buiten een iteratie verschillende resultaten oplevert. Ze moeten worden gedefinieerd in de buurt van waar ze zullen worden gebruikt. Dit helpt ook bij het afbreken van lange codes, waardoor ze gemakkelijker te begrijpen en te debuggen zijn.

Inhoudsopgave

Maak DAX-query's met CALCULATE en FILTER

Er zijn verschillende methoden om resultaten en antwoorden in DAX te krijgen. U moet uw eigen stijl en flow ontwikkelen bij het maken van uw rapport, zodat u vertrouwd kunt raken met waar u aan werkt. Zelfs als je je eigen stijl hebt, moet je nog steeds de specifieke richtlijnen volgen, waaronder het gebruik van CALCULATE over verschillende methoden zoals FILTER .

FILTER kan veel ongecomprimeerde gegevens naar de formule-engine sturen en mogelijk een CallBackDataID activeren. Hier worden metingen gebruikt om de resultaten van CALCULATE en FILTER weer te geven . Dit heeft ook een gedefinieerde meting die lokaal is voor de query. Gedefinieerde maatregelen zijn niet te vinden in het datamodel, maar ze kunnen uw codes sneller ontwikkelen en problemen oplossen.

DAX-query's met behulp van variabelen en belangrijke functies

Op de eerste regel ziet u een meetwaarde die een variabele voor de datum definieert. Dit betekent dat de feitentabel wordt gefilterd voor de datums die plaatsvinden op of na 31 maart 2016. U kunt ook een eenvoudige maatstaf van de totale verkoop zien die de tabel Feitelijke verkopen herhaalt en de hoeveelheid en de huidige prijs vermenigvuldigt.

De volgende maatregel is het gebruik van binnen . Als u terugroept uit de CallBackDataID- module, zal het gebruik van een IF in de SUMX-functie een CallBackDataID creëren .

DAX-query's met behulp van variabelen en belangrijke functies

Deze meting filtert de hele Fact Sales-tabel. Het verwijdert de filters die uit de datumtabel komen.

DAX-query's met behulp van variabelen en belangrijke functies

U moet voorzichtig zijn bij het filteren van een hele tabel, omdat hiermee ook alle kolommen aan de ene kant van de een-op-veel-relatie worden gefilterd.

Deze maatregel is gelijk aan de vorige maatregel; het enige verschil is dat het niet de hele tabel filtert. Het gebruikt SUMX om alleen een gefilterde tabel te herhalen.

DAX-query's met behulp van variabelen en belangrijke functies

Dit is een andere meting die de Fact Sales-tabel filtert, maar deze keer is het alleen op de kolom waar het in staat.

DAX-query's met behulp van variabelen en belangrijke functies

De laatste maatregel is het gebruik van CALCULATE en het datamodel om gegevens te filteren en op te halen.

DAX-query's met behulp van variabelen en belangrijke functies

Ren en controleer elke maat

Voer eerst de IF- meting uit. Zorg ervoor dat u de cache wist voordat u de query uitvoert en schakel de Server Timings en Query Plan in.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Hoewel het de juiste gegevens levert, is de prestatie traag vanwege de CallBackDataID en de 3 Durations.

Als u de meting uitvoert die de volledige Fact Sales-tabel filtert, kunt u nog steeds de CallBackDataID zien . Het genereert ook 15.003 rijen en levert onjuiste resultaten op.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Wanneer u de meting uitvoert die niet de hele tabel Fact Sales filtert, krijgt u de juiste resultaten. U ziet echter nog steeds de CallBackDataID en de gerealiseerde 15.003 rijen, maar heeft slechts 7 rijen uitvoer.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Voer de volgende meetwaarde uit die op een kolom filtert. U krijgt de juiste resultaten en elimineert de CallBackDataID . Maar je kunt nog steeds zien dat het veel rijen heeft opgeleverd.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Voer de CALCULATE- meting uit. U kunt zien dat het slechts 10 rijen heeft gerealiseerd en de juiste gegevens in 5 milliseconden heeft gegenereerd.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Het is de snelste van alle bovenstaande maatregelen omdat het niet de CallBackDataID heeft en slechts 10 rijen heeft getrokken. Dit laat zien hoe indrukwekkend CALCULATE is in het verkrijgen van snelle en nauwkeurige resultaten.

Als u alle DAX-query's of -metingen uitvoert, kunt u op basis van de duur zien welke de langzaamste en snelste is. U kunt ook de resultaten van elke maatregel bekijken.

DAX-query's met behulp van variabelen en belangrijke functies

DAX-query's met behulp van variabelen en belangrijke functies

Conclusie

Door de filters naar CALCULATE te verplaatsen, bespaart u tijd en materialisatie omdat de CallBackDataID wordt geëlimineerd. U hoeft de gegevens niet twee keer te herhalen. Dit zal ook de prestaties van uw DAX maximaliseren en u helpen uw ontwikkelingsvaardigheden te verbeteren.


Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Wat is zelf in Python: voorbeelden uit de echte wereld

Een RDS-bestand opslaan en laden in R

Een RDS-bestand opslaan en laden in R

Je leert hoe je objecten uit een .rds-bestand in R opslaat en laadt. In deze blog wordt ook besproken hoe je objecten uit R naar LuckyTemplates importeert.

First N Business Days Revisited – Een DAX-coderingstaaloplossing

First N Business Days Revisited – Een DAX-coderingstaaloplossing

In deze tutorial over DAX-coderingstaal leert u hoe u de functie GENERATE gebruikt en hoe u de titel van een maat dynamisch wijzigt.

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Breng inzichten onder de aandacht met behulp van de Multi Threaded Dynamic Visuals-techniek in LuckyTemplates

Deze zelfstudie behandelt hoe u de Multi Threaded Dynamic Visuals-techniek kunt gebruiken om inzichten te creëren op basis van dynamische gegevensvisualisaties in uw rapporten.

Inleiding tot het filteren van context in LuckyTemplates

Inleiding tot het filteren van context in LuckyTemplates

In dit artikel zal ik de filtercontext doornemen. Filtercontext is een van de belangrijkste onderwerpen waarover elke LuckyTemplates-gebruiker in eerste instantie zou moeten leren.

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Beste tips voor het gebruik van de apps in LuckyTemplates Online Service

Ik wil laten zien hoe de online service LuckyTemplates Apps kan helpen bij het beheren van verschillende rapporten en inzichten die uit verschillende bronnen zijn gegenereerd.

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Analyseer winstmargeveranderingen in de loop van de tijd - analyse met LuckyTemplates en DAX

Leer hoe u wijzigingen in uw winstmarge kunt berekenen met behulp van technieken zoals vertakking van metingen en het combineren van DAX-formules in LuckyTemplates.

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Materialisatie-ideeën voor gegevenscaches in DAX Studio

Deze tutorial bespreekt de ideeën van materialisatie van datacaches en hoe deze de prestaties van DAX beïnvloeden bij het leveren van resultaten.

Zakelijke rapportage met behulp van LuckyTemplates

Zakelijke rapportage met behulp van LuckyTemplates

Als u tot nu toe nog steeds Excel gebruikt, is dit het beste moment om LuckyTemplates te gaan gebruiken voor uw zakelijke rapportagebehoeften.

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten

Wat is LuckyTemplates Gateway? Alles wat u moet weten