Partilhar via


associação interna

O inner sabor de associação é como a associação interna padrão do mundo SQL. É produzido um registo de saída sempre que um registo no lado esquerdo tem a mesma chave de associação que o registo no lado direito.

Diagrama que mostra como a associação funciona.

Syntax

LeftTable|joinkind=inner [ Sugestões ] Tabela DireitaonCondições

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Necessário Descrição
LeftTable string ✔️ A tabela esquerda ou expressão tabular, por vezes denominada tabela externa, cujas linhas devem ser intercaladas. Indicado como $left.
Sugestões string Zero ou mais sugestões de associação separadas por espaço na forma deValor de Nome= que controlam o comportamento da operação de correspondência de linhas e do plano de execução. Para obter mais informações, consulte Sugestões.
Tabela Direita string ✔️ A tabela ou expressão tabular direita, por vezes denominada tabela interna, cujas linhas devem ser intercaladas. Indicado como $right.
Condições string ✔️ Determina como as linhas de LeftTable são correspondidas com linhas da Tabela Direita. Se as colunas que pretende corresponder tiverem o mesmo nome em ambas as tabelas, utilize a sintaxe ONColumnName. Caso contrário, utilize a sintaxe ON $left.LeftColumn==$right.RightColumn. Para especificar várias condições, pode utilizar a palavra-chave "e" ou separá-las com vírgulas. Se utilizar vírgulas, as condições são avaliadas com o operador lógico "e".

Dica

Para obter um melhor desempenho, se uma tabela for sempre mais pequena do que a outra, utilize-a como o lado esquerdo da associação.

Sugestões

Nome dos parâmetros Valores Descrição
hint.remote auto, left, local, right Veja Associação entre Clusters
hint.strategy=broadcast Especifica a forma de partilhar a carga de consulta em nós de cluster. Ver associação de difusão
hint.shufflekey=<key> A shufflekey consulta partilha a carga de consulta em nós de cluster, utilizando uma chave para os dados de partição. Ver consulta aleatória
hint.strategy=shuffle A shuffle consulta de estratégia partilha a carga de consulta em nós de cluster, onde cada nó processa uma partição dos dados. Ver consulta aleatória

Devoluções

Esquema: todas as colunas de ambas as tabelas, incluindo as teclas correspondentes.
Linhas: apenas linhas correspondentes de ambas as tabelas.

Exemplo

let X = datatable(Key:string, Value1:long)
[
    'a',1,
    'b',2,
    'b',3,
    'k',5,
    'c',4
];
let Y = datatable(Key:string, Value2:long)
[
    'b',10,
    'c',20,
    'c',30,
    'd',40,
    'k',50
];
X | join kind=inner Y on Key

Saída

Chave Valor1 Chave1 Valor2
b 3 b 10
b 2 b 10
c 4 c 20
c 4 c 30
K 5 K 50

Nota

  • (b,10) do lado direito, foi associado duas vezes: com ambos (b,2) e (b,3) à esquerda.
  • (c,4) no lado esquerdo, foi associado duas vezes: com ambos (c,20) e (c,30) à direita.
  • (k,5) da esquerda e (k, 50) da direita foi associado uma vez.