gebeurtenis
31 mrt, 23 - 2 apr, 23
De ultieme Microsoft Fabric-, Power BI-, SQL- en AI-communitygebeurtenis. 31 maart tot 2 april 2025.
Zorg dat u zich vandaag nog registreertDeze browser wordt niet meer ondersteund.
Upgrade naar Microsoft Edge om te profiteren van de nieuwste functies, beveiligingsupdates en technische ondersteuning.
Van toepassing op:berekende kolomberekende tabelMeasureVisuele berekening
Retourneert all de rijen in een tabel, orall de values in een kolom, waarbij alle filters worden genegeerd die mogelijk zijn toegepast. Deze functie is handig voor het wissen van filtersand het maken van berekeningen op all de rijen in een tabel.
ALL( [<table> | <column>[, <column>[, <column>[,…]]]] )
Term | Definitie |
---|---|
table |
De tabel waarop u filters wilt wissen. |
column |
De kolom waarop u filters wilt wissen. |
Het argument voor de functie ALL moet een verwijzing naar een basistabel zijn or een verwijzing naar een basiskolom. U kunt geen tabelexpressies or kolomexpressies gebruiken met de functie ALL.
De tabel or kolom met filters verwijderd.
Deze functie wordt zelf not gebruikt, maar fungeert als een tussenliggende functie die kan worden gebruikt om de set resultaten te wijzigen waarvoor een andere berekening wordt uitgevoerd.
Het normale gedrag voor DAX expressies die de functie ALL() bevatten, is dat alle toegepaste filters worden genegeerd. Er zijn echter enkele scenario's waarin dit not het geval is vanwege auto-exist
, een DAX-technologie die het filteren optimaliseert om de hoeveelheid verwerking die nodig is voor bepaalde DAX query's te verminderen. Een voorbeeld waarbij automatisch bestaan andALL() onverwachte resultaten biedt, is wanneer u filtert op twee or meer kolommen van dezelfde tabel (zoals bij het gebruik van slicers), and er een measure in dezelfde tabel is die gebruikmaakt van ALL(). In dit geval wordt automatisch bestaan samenvoegen de meerdere filters in één and slechts filter op bestaande combinaties van values. Vanwege deze samenvoeging wordt de measure berekend op de bestaande combinaties van valuesand het resultaat wordt gebaseerd op gefilterde values in plaats van allvalues zoals verwacht. Zie het Understanding DAX auto-Exist artikel over sql.bi.comvan Microsoft MVP Alberto Ferrari voor meer informatie over automatisch bestaan andeffect berekeningen.
In de volgende tabel wordt beschreven hoe u de ALLandALLEXCEPT functies in verschillende scenario's kunt gebruiken.
Gebruik van functie and | Beschrijving |
---|---|
ALL() | Hiermee verwijdert u allfilters overal. ALL() kan alleen worden gebruikt om filters te wissen, maar not om een tabel te retourneren. |
ALL(tabel) | Hiermee verwijdert u allfilters uit de opgegeven tabel. In effectretourneert ALL(Tabel) all van de values in de tabel, waarbij alle filters worden verwijderd uit de context die anders is toegepast. Deze functie is handig wanneer u met veel groeperingsniveaus werkt, and een berekening wilt maken die een verhouding van een geaggregeerde value tot het totale valuemaakt. In het first voorbeeld ziet u dit scenario. |
ALL (Kolom[, Kolom[, ...]]) | Verwijdert allfilters uit de opgegeven kolommen in de tabel; all andere filters op andere kolommen in de tabel zijn nog steeds van toepassing. All kolomargumenten moeten afkomstig zijn uit dezelfde tabel. De variant ALL(Kolom) is handig als u de context filters voor een or specifiekere kolommen wilt verwijderen and om all andere context filterste behouden. De secondand derde voorbeelden laten dit scenario zien. |
ALLEXCEPT(tabel, kolom1 [,kolom2]...) | Hiermee verwijdert u all context filters in de tabel exceptfilters die worden toegepast op de opgegeven kolommen. Dit is een handige snelkoppeling voor situaties waarin u de filters op veel, maar notall, kolommen in een tabel wilt verwijderen. |
Deze functie wordt not ondersteund voor gebruik in de DirectQuery-modus wanneer deze wordt gebruikt in berekende kolommen or regels voor beveiliging op rijniveau (RLS).
Calculate verhouding van categorieverkoop tot totale verkoop
Stel dat u het aantal verkopen voor de huidige cel in de draaitabel wilt find, gedeeld door de totale verkoop voor all resellers. Om ervoor te zorgen dat de noemer hetzelfde is, ongeacht hoe de gebruiker van de draaitabel kan filteren or de gegevens groepeert, define u een formule die gebruikmaakt van ALL om het juiste eindtotaal te maken.
In de volgende tabel ziet u de resultaten wanneer een nieuwe measure, All Reseller Sales Ratio, wordt gemaakt met behulp van de formule die wordt weergegeven in de codesectie. Als u wilt zien hoe dit werkt, voegt u het veld CalendarYear toe aan het rijlabels gebied van de draaitabel, and het veld ProductCategoryName toevoegen aan het kolomlabels gebied. Sleep vervolgens de measure, All Reseller Sales Ratio, naar het Values gebied van de draaitabel. Als u de resultaten als percentages wilt weergeven, gebruikt u de opmaakfuncties van Excel om een getalnotatiepercentage toe te passen op de cellen die contains de measure.
Rijlabels | Accessoires | Fietsen | Kleding | Onderdelen | Eindtotaal |
---|---|---|---|---|---|
2005 | 0,02% | 9.10% | 0.04% | 0,75% | 9.91% |
2006 | 0.11% | 24.71% | 0,60% | 4.48% | 29.90% |
2007 | 0,36% | 31.71% | 1.07% | 6,79% | 39.93% |
2008 | 0,20% | 16.95% | 0,48% | 2.63% | 20.26% |
Eindtotaal | 0,70% | 82.47% | 2.18% | 14,65% | 100.00% |
formule
= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/SUMX(ALL(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
De formule wordt als volgt samengesteld:
De teller, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])
, is de sum van de values in ResellerSales_USD[SalesAmount_USD] voor de huidige cel in de draaitabel, waarbij context filters toegepast op CalendarYear and ProductCategoryName.
Voor de noemer geeft u eerst een tabel op, ResellerSales_USD, and de functie ALL gebruiken om all context filters in de tabel te verwijderen.
Vervolgens gebruikt u de functie SUMX om de values in de kolom ResellerSales_USD[SalesAmount_USD] te sum. Met andere woorden, u krijgt de sum van ResellerSales_USD[SalesAmount_USD] voor de verkoop van all resellers.
Calculate verhouding van Product verkoop tot totale verkoop via huidige Year
Stel dat u een tabel wilt maken met het verkooppercentage in de loop van de jaren voor elke categorie product (ProductCategoryName). Als u het percentage voor elke year voor elk value van ProductCategoryName wilt verkrijgen, moet u de sum van de verkoop voor die specifieke yearandproduct categorie sum voor dezelfde product categorie gedurende all jaar divide. Met andere woorden, u wilt de filter op ProductCategoryName behouden, maar de filter op de year verwijderen bij het berekenen van de noemer van het percentage.
In de volgende tabel ziet u de resultaten wanneer een nieuwe measure, Reseller Sales Year, wordt gemaakt met behulp van de formule die wordt weergegeven in de codesectie. Als u wilt zien hoe dit werkt, voegt u het veld CalendarYear toe aan het gebied Rijlabels gebied van een draaitabel, and het veld ProductCategoryName toevoegen aan het gebied Kolomlabels. Als u de resultaten wilt weergeven als percentages, gebruikt u de opmaakfuncties van Excel om een percentagenummer toe te passen format op de cellen met de measure, Reseller Sales Year.
Rijlabels | Accessoires | Fietsen | Kleding | Onderdelen | Eindtotaal |
---|---|---|---|---|---|
2005 | 3.48% | 11.03% | 1.91% | 5.12% | 9.91% |
2006 | 16.21% | 29.96% | 27.29% | 30,59% | 29.90% |
2007 | 51.62% | 38.45% | 48.86% | 46.36% | 39.93% |
2008 | 28.69% | 20,56% | 21.95% | 17.92% | 20.26% |
Eindtotaal | 100.00% | 100.00% | 100.00% | 100.00% | 100.00% |
formule
= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(DateTime[CalendarYear]))
De formule wordt als volgt samengesteld:
De teller, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])
, is de sum van de values in ResellerSales_USD[SalesAmount_USD] voor de huidige cel in de draaitabel, waarbij context filters toegepast op de kolommen CalendarYear and ProductCategoryName.
Voor de noemer verwijdert u de bestaande filter op CalendarYear met behulp van de functie ALL(Kolom). Hiermee wordt de sum berekend over de resterende rijen in de ResellerSales_USD tabel, na het toepassen van de bestaande context filters van de kolomlabels. Het netto-effect is dat voor de noemer de sum wordt berekend over de geselecteerde ProductCategoryName (de impliciete context filter) and voor allvalues in Year.
Calculate bijdrage van Product categorieën aan totale verkoop per Year
Stel dat u een tabel wilt maken waarin het percentage verkoop voor elke product categorie wordt weergegeven, op yearyear basis. Als u het percentage voor elke product categorie in een bepaalde yearwilt verkrijgen, calculate moet u de sum van de verkoop voor die specifieke product categorie (ProductCategoryName) in year n and en vervolgens de resulterende valuedivide door de sum van de verkoop voor de year n boven allproduct categorieën. Met andere woorden, u wilt de filter behouden op year, maar de filter op ProductCategoryName verwijderen bij het berekenen van de noemer van het percentage.
In de volgende tabel ziet u de resultaten wanneer een nieuwe measure, Reseller Sales CategoryName, wordt gemaakt met behulp van de formule die wordt weergegeven in de codesectie. Als u wilt zien hoe dit werkt, voegt u het veld CalendarYear toe aan het rijlabels gebied van de draaitabel, and het veld ProductCategoryName toe te voegen aan het gebied Kolomlabels. Voeg vervolgens de nieuwe measure toe aan het Values gebied van de draaitabel. Als u de resultaten wilt weergeven als percentages, gebruikt u de opmaakfuncties van Excel om een percentagenummer toe te passen format op de cellen met de nieuwe measure, Reseller Sales CategoryName.
Rijlabels | Accessoires | Fietsen | Kleding | Onderdelen | Eindtotaal |
---|---|---|---|---|---|
2005 | 0,25% | 91.76% | 0,42% | 7,57% | 100.00% |
2006 | 0,38% | 82.64% | 1.99% | 14.99% | 100.00% |
2007 | 0,90% | 79.42% | 2.67% | 17.01% | 100.00% |
2008 | 0,99% | 83.69% | 2.37% | 12.96% | 100.00% |
Eindtotaal | 0,70% | 82.47% | 2.18% | 14,65% | 100.00% |
formule
= SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])/CALCULATE( SUM( ResellerSales_USD[SalesAmount_USD]), ALL(ProductCategory[ProductCategoryName]))
De formule wordt als volgt samengesteld:
De teller, SUMX(ResellerSales_USD, ResellerSales_USD[SalesAmount_USD])
, is de sum van de values in ResellerSales_USD[SalesAmount_USD] voor de huidige cel in de draaitabel, waarbij context filters toegepast op de velden CalendarYear and ProductCategoryName.
Voor de noemer gebruikt u de functie ALL(Kolom) om de filter op ProductCategoryName te verwijderen andcalculate de sum over de resterende rijen in de ResellerSales_USD tabel na het toepassen van de bestaande context filters van de rijlabels. De netto-effect is dat voor de noemer de sum wordt berekend over de geselecteerde Year (de impliciete context filter) and voor allvalues van ProductCategoryName.
Filter functies
ALL functie
ALLEXCEPT functie
FILTER functie
gebeurtenis
31 mrt, 23 - 2 apr, 23
De ultieme Microsoft Fabric-, Power BI-, SQL- en AI-communitygebeurtenis. 31 maart tot 2 april 2025.
Zorg dat u zich vandaag nog registreert