1
resposta

duvida com relação ao cross join

Já vi o video 2 vezes, mas ainda tenho duvida com relação ao uso do cross join nessa ultima query, poderia explicar um pouco melhor?

1 resposta

Oii, Fernando! Tudo certo?

Claro, vou te auxiliar.

Usamos o CROSS JOIN quando queremos a combinação de linhas entre tabelas distintas. Neste artigo da Alura temos uma boa analogia sobre o que é, vale a pena ler.

E na consulta o primeiro CROSS JOIN está fazendo a junção da linha index_produtos com as linhas do UNNEST de materiaprima_index. Para cada produto ser replicado para cada matéria-prima associada a ele. No segundo CROSS JOIN, a junção acontece entre as linhas resultantes do CROSS JOIN feito anteriormente com as linhas do UNNEST de distribuicao_index. A finalidade é para gerar a combinação de cada matéria-prima com cada distribuição.

Para mais exemplos você pode ler o artigo disponibilizado no site SQL Shack, clique aqui. A página pode abrir em inglês, caso não tenha familiaridade com o idioma, pode usar o tradutor automático do navegador para traduzir a página.

Espero ter ajudado. Conte sempre conosco aqui no fórum.

Até mais, Fernando!