Compartilhar via


Função Intersect (MDX)

Retorna a interseção de dois conjuntos de entrada, mantendo as duplicatas.

Sintaxe

Intersect(Set_Expression1 , Set_Expression2 [ , ALL ] )

Argumentos

  • Set_Expression1
    Uma linguagem MDX válida que retorna um conjunto.

  • Set_Expression2
    Uma linguagem MDX válida que retorna um conjunto.

Comentários

A função Intersect retorna a interseção de dois conjuntos. Por padrão, a função remove as duplicações antes da interseção dos dois conjuntos. Os dois conjuntos devem ter a mesma dimensionalidade.

O sinalizador ALL opcional mantém duplicatas. Se ALL for especificado, a função Intersect fará a interseção de elementos não duplicados normalmente e também de cada duplicata do primeiro conjunto que tenha uma duplicata correspondente no segundo conjunto. Os dois conjuntos devem ter a mesma dimensionalidade.

Exemplo

A consulta a seguir retorna os anos de 2003 e 2004, os dois membros que aparecem em ambos os conjuntos especificados:

SELECT

INTERSECT(

{[Date].[Calendar Year].&[2001], [Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003]}

, {[Date].[Calendar Year].&[2002],[Date].[Calendar Year].&[2003], [Date].[Calendar Year].&[2004]})

ON 0

FROM

[Adventure Works]

A consulta a seguir falha porque os dois conjuntos especificados contêm membros de hierarquias diferentes:

SELECT

INTERSECT(

{[Date].[Calendar Year].&[2001]}

, {[Customer].[City].&[Abingdon]&[ENG]})

ON 0

FROM

[Adventure Works]

Consulte também

Referência