ALLNOBLANKROW
Dotyczy:kolumna obliczeniowatabela obliczeniowaMeasureobliczenia wizualne
Z tabeli nadrzędnej relacji zwraca all wiersze, ale wiersz blank, orall odrębne values kolumny, ale wiersz blank, and pomija wszelkie filters kontekstu, które mogą istnieć.
Składnia
ALLNOBLANKROW( {<table> | <column>[, <column>[, <column>[,…]]]} )
Parametry
Termin | Definicja |
---|---|
table |
Tabela, w której all kontekst filters są usuwane. |
column |
Kolumna, w której all kontekst filters są usuwane. |
Należy przekazać tylko jeden parametr; parametr jest albo tabelą or kolumnie.
Zwracanie value
Tabela, gdy przekazany parametr był tabelą, or kolumnę values, gdy przekazany parametr był kolumną.
Uwagi
Funkcja ALLNOBLANKROW tylko filters wiersza blank, który tabela nadrzędna w relacji będzie pokazywać, gdy istnieje jeden or więcej wierszy w tabeli podrzędnej, które nie pasują values do kolumny nadrzędnej. Zapoznaj się z poniższym przykładem, aby uzyskać dokładne wyjaśnienie.
W poniższej tabeli przedstawiono podsumowanie odmian
ALL
dostępnych w DAX, and ich różnice:Użycie and funkcji Opis ALL(Column)
Usuwa allfilters z określonej kolumny w tabeli; all innych filters w tabeli, w innych kolumnach, nadal mają zastosowanie. ALL(Table)
Usuwa allfilters z określonej tabeli. ALLEXCEPT(Table,Col1,Col2...)
Zastępuje all kontekstu filters w tabeli except w określonych kolumnach. ALLNOBLANK(table|column)
Z tabeli nadrzędnej relacji zwraca wiersze all, ale wiersz blank, orall odrębne values kolumny, ale wiersz blank, and pomija wszelkie filters kontekstu, które mogą istnieć Aby uzyskać ogólny opis działania funkcji ALL, wraz z przykładami krok po kroku, które używają ALL(Tabela) andALL(Kolumna), zobacz ALL funkcji.
Ta funkcja jest not obsługiwana do użycia w trybie DirectQuery w przypadku użycia w kolumnach obliczeniowych or reguł zabezpieczeń na poziomie wiersza.
Przykład
W danych sample tabela ResellerSales_USD contains jednym wierszu, który nie ma valuesand dlatego nie może być related żadnej z tabel nadrzędnych w relacjach w skoroszycie. Użyjesz tej tabeli w tabeli przestawnej, aby zobaczyć zachowanie wiersza blankand sposób obsługi liczby niepowiązanych danych.
Krok 1. Weryfikowanie niepowiązanych danych
Otwórz
Krok 2. Tworzenie tabeli przestawnej
Utwórz nową tabelę przestawną, a następnie przeciągnij kolumnę datetime. [CalendarYear], do okienka Etykiety wierszy. W poniższej tabeli przedstawiono oczekiwane wyniki:
Etykiety wierszy |
---|
2005 |
2006 |
2007 |
2008 |
Suma końcowa |
Zanotuj etykietę blank między 2008andsumy końcowej. Ta etykieta blank reprezentuje nieznany element członkowski, który jest grupą specjalną utworzoną w celu uwzględnienia wszystkich values w tabeli podrzędnej, które nie mają pasujących value w tabeli nadrzędnej, w tym przykładzie data/godzina. [CalendarYear] kolumna.
Gdy ta etykieta blank zostanie wyświetlona w tabeli przestawnej, wiesz, że w niektórych tabelach, które są related do kolumny data/godzina. [CalendarYear], istnieją blankvaluesor niezgodne values. Tabela nadrzędna to ta, która pokazuje etykietę blank, ale wiersze, które not pasują, znajdują się w jednej or więcej tabel podrzędnych.
Wiersze dodawane do tej grupy etykiet blank są albo values, które not pasują do dowolnego value w tabeli nadrzędnej — na przykład date, który not istnieje w tabeli datetime — or null values, co oznacza, że value dla date w all. W tym przykładzie umieściliśmy blankvalue w kolumnach all tabeli sprzedaży podrzędnej. Posiadanie większej liczby values w tabeli nadrzędnej niż w tabelach podrzędnych not powodować problem.
Krok 3. Count wierszy przy użyciu ALLand ALLNOBLANK
Dodaj następujące dwie miary do tabeli datetime, aby count wierszy tabeli: Countrows ALLNOBLANKdatetime , CountrowsALL data/godzina. Formuły, których można użyć do define następujących miar:
// Countrows ALLNOBLANK of datetime
= COUNTROWS(ALLNOBLANKROW('DateTime'))
// Countrows ALL of datetime
= COUNTROWS(ALL('DateTime'))
// Countrows ALLNOBLANKROW of ResellerSales_USD
= COUNTROWS(ALLNOBLANKROW('ResellerSales_USD'))
// Countrows ALL of ResellerSales_USD
= COUNTROWS(ALL('ResellerSales_USD'))
W tabeli przestawnej blank dodaj datę/godzinę. [CalendarYear] kolumna do etykiet wierszy, and następnie dodać nowo utworzone miary. Wyniki powinny wyglądać podobnie do poniższej tabeli:
Etykiety wierszy | Countrows ALLNOBLANK daty/godziny | Countrows ALL daty/godziny |
---|---|---|
2005 | 1280 | 1281 |
2006 | 1280 | 1281 |
2007 | 1280 | 1281 |
2008 | 1280 | 1281 |
1280 | 1281 | |
Suma końcowa | 1280 | 1281 |
Wyniki pokazują różnicę 1 wierszy w wierszach tabeli count. Jednak
Krok 4. Sprawdź, czy count jest dokładny
Aby udowodnić, że ALLNOBLANKROW wykonuje notcountblank wierszy, and obsługuje tylko specjalny wiersz blank tylko w tabeli nadrzędnej, dodaj następujące dwie miary do tabeli ResellerSales_USD: CountrowsALLNOBLANKROW ResellerSales_USDCountrowsALL ResellerSales_USD.
Utwórz nową tabelę przestawną, and przeciągnąć kolumnę datetime. [CalendarYear], do okienka Etykiety wierszy. Now dodać utworzone miary. Wyniki powinny wyglądać następująco:
Etykiety wierszy | Countrows ALLNOBLANKROW ResellerSales_USD | Countrows ALL ResellerSales_USD |
---|---|---|
2005 | 60856 | 60856 |
2006 | 60856 | 60856 |
2007 | 60856 | 60856 |
2008 | 60856 | 60856 |
60856 | 60856 | |
Suma końcowa | 60856 | 60856 |
Now te dwie miary mają te same wyniki. Wynika to z faktu, że funkcja ALLNOBLANKROWnotcount naprawdę blank wierszy w tabeli, ale obsługuje tylko wiersz blank, który jest specjalnym przypadkiem wygenerowanym w tabeli nadrzędnej, gdy jeden or więcej tabel podrzędnych w relacji zawiera niezgodne valuesorblankvalues.
Related zawartości