Clique no banner para conhecer e adquirir o meu treinamento de Bancos de Dados no Azure

SQL Server e Azure SQL – Desafio para agrupar dados utilizando hierarquias

Visualizações: 460 views
Tempo de Leitura: 4 minutos

Fala pessoal!
Nesse post eu gostaria compartilhar com vocês um desafio de SQL que recebi envolvendo hierarquias:

A maior dificuldade aqui, é agrupar os dados utilizando hierarquias, de modo que o nível pai (nível 1) some o valor da venda de todos os filhos (nível 2+). O nível abaixo (nível 2), deve somar as vendas de todos os filhos deles (nível 3+) e assim por diante.

E é claro que topei o desafio e tentei resolvê-lo, né?

Criando a base de testes

Para facilitar os seus testes, vou disponibilizar o script para criar essa mesma base:

Prévia dos dados:

Como eu resolvi esse desafio

Para resolver esse desafio, eu utilizei CTE recursiva, WHILE e subquery, de modo a apresentar uma solução simples de entender a lógica e rápida para desenvolver.

Resultado Final
Opção 1: Nova coluna com a venda da equipe

Opção 2: Novas linhas com a venda da equipe

EDIT – Opção 3: Solução enviada pelo Cassio Junior

Resultado:

E você? Como você resolveria esse desafio? Conseguiria uma consulta mais simples ou mais rápida do que essa apresentada no artigo?
Posta aqui nos comentários a sua solução.
Estou ansioso para ver o que vocês fizeram 🙂