Usuário com melhor resposta
apresentar soma em uma unica linha

Pergunta
-
Boa tarde!
Estou precisando desenvolver uma consulta sql que me mostre o valor total de uma determinada filiaL, sendo que essa filial possui "filhas", entao preciso da soma geral, em que é dada pelo valor total da filial mais o total das "filhas".
Ex: Tabela:Contabil
Filial | contrato | data | valor
01 | fortaleza | 20160101 | 700,0002 | fortaleza- 01 |20160101 | 200,00
03 | fortaleza- 02 |20160103 | 100,00
07 | Belo Horizonte |20160103 | 300,00
04 | Belo Horizonte 1|20160103 | 300,00
Como faço para que o select some as "filhas" e a princial, e atribua o valor total a principal?
ficando desta forma:
Filial | contrato | data | valor
01 | fortaleza | 20160101 | 900,00
01 | fortaleza | 20160103 | 100,00
07 | Belo Horizonte |20160103 | 600,00
Tentei da seguinte maneira porém nap obtive sucesso:
select Grupo as cod_filial,DescGrupo as desc_filial, sum(Valor) as sum_custo_filial, v.competencia, from dbo.contabil v where DescDetalheVisao NOT IN ('Depreciação e Amortização - Operacional') AND v.tipo = 1 AND v.idGrupoCentroCusto IN (41,42, 104,218)-- acrescentei essa linha pra ele somar tudo dessas filiais AND ( Dtnova between '20160101' and '20160131') roup by v.competencia, Grupo, DescGrupo, t.grupoccusto,
Alguém poderia me ajudar?
Respostas
-
São 2 tabelas, uma de filiais e outra de lançamentos?
Caso seja, acho que uma alternativa seria criar uma nova coluna na tabela de filiais para inserir o código da filial pai daquela filial, sendo que se a filial não tiver pai você poderia deixar a coluna com null.
Acho que dessa forma seria possível trocar o código da filial pelo código da filial pai para poder acumular os valores.
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta carine.couto quarta-feira, 11 de janeiro de 2017 20:22
Todas as Respostas
-
-
Boa tarde,
Existe alguma coluna nessa tabela ou em outra para identificar que uma determinada filial é filha de uma outra?
Assinatura: http://www.imoveisemexposicao.com.br
-
Boa tarde, esse esta sendo o meu problema pois não temos.
Temos apenas uma tabela e cadastramos as filiais, e outra onde fazemos os lançamentos referente a filial. E por erro ou nao sei o que , usuário ao invés de fazer lançamentos na filial já existente ele criou outra filial e saiu fazendo lançamentos rs ( Estávamos tentando automatizar uma planilha).
Quando vamos consultar o valor da filial , esta mostrando valor divergente que é justamente esses valores que foram lançados em uma outra filial. (São muitos lançamentos )
Entao pensamos na possibilidade de tentar somar o valor dessas filiais "filhas".outra ponto que pensei que se nao for possivel fazer essa opção citada acima, criar uma procedure que consolide os valores da filial em uma tabela e em seguida criar uma view trazendo os valores das outras filiais e usar um union all com um select somando apenas os valores dessas filiais
-
São 2 tabelas, uma de filiais e outra de lançamentos?
Caso seja, acho que uma alternativa seria criar uma nova coluna na tabela de filiais para inserir o código da filial pai daquela filial, sendo que se a filial não tiver pai você poderia deixar a coluna com null.
Acho que dessa forma seria possível trocar o código da filial pelo código da filial pai para poder acumular os valores.
Espero que ajude
Assinatura: http://www.imoveisemexposicao.com.br
- Marcado como Resposta carine.couto quarta-feira, 11 de janeiro de 2017 20:22
-