Partilhar via


CROSSJOIN

Aplica-se a:Coluna calculadaTabela calculadaMedidaCálculo visual

Retorna uma tabela que contém o produto cartesiano de todas as linhas de todas as tabelas nos argumentos. As colunas na nova tabela são todas as colunas em todas as tabelas de argumentos.

Sintaxe

CROSSJOIN(<table>, <table>[, <table>]…)

Parâmetros

Vigência Definição
table Qualquer expressão DAX que retorna uma tabela de dados

Valor de retorno

Uma tabela que contém o produto cartesiano de todas as linhas de todas as tabelas nos argumentos.

Comentários

  • Os nomes de colunas de table argumentos devem ser todos diferentes em todas as tabelas ou um erro é retornado.

  • O número total de linhas retornadas por CROSSJOIN() é igual ao produto do número de linhas de todas as tabelas nos argumentos; Além disso, o número total de colunas na tabela de resultados é a soma do número de colunas em todas as tabelas. Por exemplo, se TableA tiver rA linhas e cA colunas, e TableB tiver rB linhas e cB colunas, e TableC tiver rC linhas e cC coluna; em seguida, a tabela resultante tem rA × rb × rC linhas e cA + cB + cC colunas.

  • Esta função não é suportada para utilização no modo DirectQuery quando utilizada em colunas calculadas ou regras de segurança ao nível da linha (RLS).

Exemplo

O exemplo a seguir mostra os resultados da aplicação de CROSSJOIN() a duas tabelas: Cores e Papel de carta.

A tabela Cores contém cores e padrões:

Cor Padrão
Vermelho Faixa Horizontal
Verde Faixa Vertical
Azul Escotilha cruzada

A tabela Papel de carta contém fontes e apresentação:

Fonte Apresentação
Serif em relevo
sans-serif gravado

A expressão para gerar a junção cruzada é apresentada abaixo:

CROSSJOIN( Colors, Stationery)

Quando a expressão acima é usada sempre que uma expressão de tabela é esperada, os resultados da expressão seriam os seguintes:

Cor Padrão Fonte Apresentação
Vermelho Faixa Horizontal Serif em relevo
Verde Faixa Vertical Serif em relevo
Azul Escotilha cruzada Serif em relevo
Vermelho Faixa Horizontal sans-serif gravado
Verde Faixa Vertical sans-serif gravado
Azul Escotilha cruzada sans-serif gravado