Filtr (MDX)

Zwraca zbiór uzyskany przez filtrowanie określonego zbioru na podstawie warunku wyszukiwania.

Syntax

  
Filter(Set_Expression, Logical_Expression )  

Arguments

Wyrażenie_docelowe
Poprawne wyrażenie z wyrażeń wielowymiarowych (MDX), które zwraca zbiór.

Logical_Expression
Poprawne wyrażenie logiczne z wyrażeń wielowymiarowych (MDX), które oblicza jako prawda lub fałsz.

Remarks

Funkcja Filtr ocenia określone wyrażenie logiczne względem każdej krotki w określonym zbiorze. Funkcja zwraca zbiór składający się z każdej krotki w określonym zbiorze, gdzie wyrażenie logiczne wychodzi jako prawda. Jeśli żadna krotka nie jest prawdziwa, zwrócony jest zbiór pusty.

Funkcja Filtr działa podobnie jak funkcja IIf . Funkcja IIf zwraca tylko jedną z dwóch opcji na podstawie oceny wyrażenia logicznego MDX, natomiast funkcja Filter zwraca zestaw krotk spełniających określony warunek wyszukiwania. W praktyce funkcja Filter wykonuje IIf(Logical_Expression, Set_Expression.Current, NULL) się na każdej krotki w zbiorze i zwraca powstały zbiór.

Examples

Poniższy przykład pokazuje użycie funkcji Filtr na osi Wierszy zapytania, zwracając tylko Daty, w których kwota sprzedaży w Internecie przekracza 10000 USD:

SELECT [Measures].[Internet Sales Amount] ON 0,  
FILTER(  
[Date].[Date].[Date].MEMBERS  
,  [Measures].[Internet Sales Amount]>10000)  
ON 1  
FROM  
[Adventure Works]  

Funkcja Filtr może również wykorzystywać wewnętrzne definicje elementów. Poniższy przykład zwraca sumę Measures.[Order Quantity] członków, zagregowaną przez pierwsze dziewięć miesięcy 2003 roku zawartych w wymiarze Date , z sześcianu Adventure Works . Funkcja PeriodsToDate definiuje krotki w zbiorze, nad którymi działa funkcja Aggregate . Funkcja Filtr ogranicza te krotki zwracane do tych o niższych wartościach dla miary Kwoty Sprzedaży Resellera za poprzedni okres czasowy.

WITH MEMBER Measures.[Declining Reseller Sales] AS Count  
   (Filter  
      (Existing  
         (Reseller.Reseller.Reseller),   
            [Measures].[Reseller Sales Amount] <   
               ([Measures].[Reseller Sales Amount],[Date].Calendar.PrevMember)  
        )  
    )  
MEMBER [Geography].[State-Province].x AS Aggregate   
( {[Geography].[State-Province].&[WA]&[US],   
   [Geography].[State-Province].&[OR]&[US] }   
)  
SELECT NON EMPTY HIERARCHIZE   
   (AddCalculatedMembers   
      ({DrillDownLevel  
         ({[Product].[All Products]})}  
        )  
    ) DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS   
FROM [Adventure Works]  
WHERE ([Geography].[State-Province].x,   
   [Date].[Calendar].[Calendar Quarter].&[2003]&[4],  
   [Measures].[Declining Reseller Sales])