Use o operador de junção
O operador de junção mescla as linhas de duas tabelas para formar uma nova tabela combinando os valores das colunas especificadas de cada tabela.
Sintaxe
Tabela Esquerda | join [JoinParameters] ( RightTable ) em Atributos
SecurityEvent
| where EventID == "4624"
| summarize LogOnCount=count() by EventID, Account
| project LogOnCount, Account
| join kind = inner (
SecurityEvent
| where EventID == "4634"
| summarize LogOffCount=count() by EventID, Account
| project LogOffCount, Account
) on Account
A primeira tabela especificada na junção é considerada a tabela Esquerda. A tabela após a palavra-chave join é a tabela correta. As colunas das tabelas são designadas, o $left.Column
e o $right.Column
para distinguir quais colunas de tabelas você está referenciando.
Ao unir tabelas, você usa os sabores de junção para determinar o comportamento de associação. É essencial entender o impacto dos registros no lado esquerdo e direito com base no sabor da junção. O gráfico abaixo mostra quais registros serão mantidos se houver ou não um registro correspondente no outro conjunto de dados. A junção interna só mostrará registros do lado esquerdo se houver um registro correspondente no lado direito. O lado direito também exigirá um registro do lado esquerdo.
Junte-se ao Flavor | Registros de saída |
---|---|
kind=leftanti, kind=leftantisemi | Devolve todos os registos do lado esquerdo que não têm correspondências do lado direito |
kind=rightanti, kind=rightantisemi | Devolve todos os registos do lado direito que não têm correspondências do lado esquerdo. |
tipo não especificado, kind=innerunique | Apenas uma linha do lado esquerdo é correspondida para cada valor da tecla on. A saída contém uma linha para cada correspondência desta linha com linhas da direita |
tipo=esquerdasemi | Devolve todos os registos do lado esquerdo que têm correspondências do lado direito. |
tipo=direitasemi | Devolve todos os registos do lado direito que têm correspondências do lado esquerdo. |
tipo=interior | Contém uma linha na saída para cada combinação de linhas correspondentes da esquerda e da direita. |
kind=leftouter (ou kind=rightouter ou kind=fullouter) | Contém uma linha para cada linha à esquerda e à direita, mesmo que não tenha correspondência. As células de saída incomparáveis contêm nulos. |