Filter (MDX)

Devolve o conjunto que resulta da filtragem de um conjunto especificado com base numa condição de pesquisa.

Syntax

  
Filter(Set_Expression, Logical_Expression )  

Arguments

Set_Expression
Uma expressão válida de Expressões Multidimensionais (MDX) que devolve um conjunto.

Logical_Expression
Uma expressão lógica válida de Expressões Multidimensionais (MDX) que avalia como verdadeira ou falsa.

Observações

A função Filter avalia a expressão lógica especificada contra cada tupla do conjunto especificado. A função devolve um conjunto que consiste em cada tuplo do conjunto especificado onde a expressão lógica se avalia como verdadeiro. Se nenhuma tupla avaliar como verdadeira, um conjunto vazio é devolvedo.

A função Filter funciona de forma semelhante à função IIf . A função IIf devolve apenas uma de duas opções baseadas na avaliação de uma expressão lógica MDX, enquanto a função Filter devolve um conjunto de tuplas que cumprem a condição de pesquisa especificada. Na prática, a função Filter executa-se IIf(Logical_Expression, Set_Expression.Current, NULL) em cada tupla do conjunto e devolve o conjunto resultante.

Examples

O exemplo seguinte mostra a utilização da função Filtro no eixo Linhas de uma consulta, para devolver apenas as Datas em que o Montante das Vendas na Internet é superior a $10000:

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

A função Filter também pode estar a usar definições de membros calculadas dentro do interior. O exemplo seguinte devolve a soma do Measures.[Order Quantity] membro, agregado nos primeiros nove meses de 2003 contido na Date dimensão, do cubo Adventure Works . A função PeríodosToDate define as tuplas no conjunto sobre o qual a função Agregado opera. A função Filtrar limita as tuplas devolvidas àquelas com valores mais baixos para a medida de Valor de Vendas do Revendedor para o período anterior.

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