Filtr (MDX)

Vrátí množinu, která vznikne filtrováním specifikované množiny na základě vyhledávacího stavu.

Syntax

  
Filter(Set_Expression, Logical_Expression )  

Arguments

Nastavit_výraz
Platný výraz Multidimensional Expressions (MDX), který vrací množinu.

Logical_Expression
Platný logický výraz z Multidimensional Expressions (MDX), který vyhodnocuje jako pravda nebo nepravda.

Remarks

Funkce Filtr vyhodnocuje zadaný logický výraz vůči každé n-tici ve stanovené množině. Funkce vrací množinu složenou z každé n-tice ve stanovené množině, kde logický výraz odpovídá pravdě. Pokud žádná n-tice nevyhodnocuje jako true, vrátí se prázdná množina.

Funkce Filtr funguje podobně jako funkce IIf . Funkce IIf vrací pouze jednu ze dvou možností založených na vyhodnocení MDX logického výrazu, zatímco funkce Filter vrací sadu n-tic, které splňují zadanou podmínku vyhledávání. Ve skutečnosti funkce Filter vykoná IIf(Logical_Expression, Set_Expression.Current, NULL) každou n-tici v množině a vrátí výslednou množinu.

Examples

Následující příklad ukazuje použití funkce Filtr na ose Řádky dotazu, která vrací pouze Data, kdy je částka internetového prodeje větší než 10000 USD:

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

Funkce Filter může také využívat vnitřní definice vypočítáných prvků. Následující příklad vrací součet Measures.[Order Quantity] členů, agregovaných za prvních devět měsíců roku 2003 obsažených v Date dimenzi, z krychle Adventure Works . Funkce PeriodsToDate definuje n-tice v množině, nad kterými funkce Aggregate funguje. Funkce Filtr omezuje tyto n-tice vrácené těm s nižšími hodnotami pro míru Prodejní částky prodejce za předchozí časové období.

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])