Estou começando a aprender planos de execução e estou confuso sobre como exatamente uma correspondência de hash funciona e por que ela seria usada em uma associação simples:
select Posts.Title, Users.DisplayName
From Posts JOIN Users on
Posts.OwnerUserId = Users.Id
OPTION (MAXDOP 1)
Pelo que entendi, os resultados da verificação superior do índice tornam-se hashable e cada linha na verificação agrupada do índice inferior é pesquisada. Entendo como as tabelas de hash funcionam, pelo menos em algum grau, mas estou confuso sobre quais valores são exatamente copiados em um exemplo como este.
O que faria sentido para mim é o campo comum entre eles, o id, é o hash - mas, se for esse o caso, por que o hash de um número?