INTERSECT

Retorna a interseção de linha entre duas tabelas, retendo as duplicatas.

Sintaxe

INTERSECT(<table_expression1>, <table_expression2>)  

Parâmetros

Termo Definição
Table_expression Qualquer expressão DAX que retorna uma tabela.

Valor retornado

Uma tabela que contém todas as linhas de table_expression1 que também estão em table_expression2

Exceções

Comentários

  • A interseção não é comutativa. Em geral, Intersect(T1, T2) terá um conjunto de resultados diferente de Intersect(T2, T1).

  • Linhas duplicadas serão preservadas. Se uma linha aparecer em table_expression1 e table_expression2, ela e todas as duplicatas de table_expression_1 serão incluídas no conjunto de resultados.

  • Os nomes de coluna corresponderão aos nomes de coluna em table_expression1.

  • A tabela retornada tem linhagem com base nas colunas em table_expression1, independentemente da linhagem das colunas na segunda tabela. Por exemplo, se a primeira coluna da primeira table_expression tiver linhagem na coluna de base C1 do modelo, a interseção reduzirá as linhas com base na interseção na primeira coluna da segunda table_expression e manterá a linhagem na coluna de base C1 intacta.

  • As colunas são comparadas com base no posicionamento e na comparação de dados sem coerção de tipo.

  • A tabela retornada não inclui colunas de tabelas relacionadas a table_expression1.

  • Não há suporte para a função ser usada no modo DirectQuery quando usada em regras RLS (segurança em nível de linha) ou colunas calculadas.

Exemplo

States1

Estado
A
A
B
B
B
C
D
D

States2

Estado
B
C
D
D
D
E

Intersect(States1, States2)

Estado
B
B
B
C
D
D

Intersect(States2, States1)

Estado
B
C
D
D
D