ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Erro na Query Sql server 2017 -Resolvido

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
valmirluis42
Novato
Novato


Registrado: Segunda-Feira, 17 de Agosto de 2015
Mensagens: 60

MensagemEnviada: Seg Jan 21, 2019 4:59 pm    Assunto: Erro na Query Sql server 2017 -Resolvido Responder com Citação

Boa noite, tenho esse select que me retorna o resultado de 7 do produto apontado no select
Código:
select codigomaterial,data,TOTALLIQUIDO, *From MOVIMENTOITEM  where DATA between'2019-01-01' and '2019-01-07' and codigomaterial='990100197' and CODIGOTABELA1 is null
and CODIGOTABELAPRECO in ('01001','01002','01003','01004')  AND  SISTEMAORIGEM='BAL'


Mas quando eu passo para esse outro select, ele dobra a informação


Código:
with
CTE_Sum as
(
SELECT
W.codigomaterial,
sum(w.QUANTIDADE) as Quantidade,
sum(w.totalliquido) as total_vendas,
sum(w.quantidade * v.ultimocustocalculado1) as total_liquido
from MOVIMENTOITEM as w inner join MATERIALALMOXARIFADO AS V ON W.codigomaterial=V.codigomaterial
where w.DATA between'2019-01-01' and '2019-01-07'and w.CODIGOTABELAPRECO in ('01001','01002','01003','01004') AND V.IDENTIFICADOR='A' AND  W.SISTEMAORIGEM='BAL' and codigotabela1 is null AND W.CODIGOMATERIAL LIKE '990100197%'
group by
W.CODIGOMATERIAL
),

CTE_RN as
(
SELECT
codigomaterial,
Quantidade,
total_liquido,
total_vendas,
total_vendas / sum(total_vendas) over() * 100 as Representatividade,
ROW_NUMBER() OVER(ORDER BY total_vendas DESC) as RN
FROM CTE_Sum
)


gostaria de saber onde estou errando


Editado pela última vez por valmirluis42 em Ter Jan 22, 2019 9:07 am, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
imex
Moderador
Moderador


Registrado: Sexta-Feira, 7 de Janeiro de 2011
Mensagens: 11666

MensagemEnviada: Seg Jan 21, 2019 7:50 pm    Assunto: Responder com Citação

Boa noite,

Pelo que vi existe um Join com a tabela MATERIALALMOXARIFADO que na outra query não existe. Nesse caso os valores podem estar dobrando por existirem 2 registros na tabela MATERIALALMOXARIFADO com aquele codigomaterial.
Acho que será necessário adicionar mais critérios/filtros para obter somente 1 registro da tabela MATERIALALMOXARIFADO, e a alteração a ser feita vai depender desses critérios/filtros.

Espero que ajude

_________________
Assinatura: https://www.imoveisemexposicao.com.br/imoveis-venda-guarulhos-residencial-apartamento
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
valmirluis42
Novato
Novato


Registrado: Segunda-Feira, 17 de Agosto de 2015
Mensagens: 60

MensagemEnviada: Ter Jan 22, 2019 9:06 am    Assunto: Responder com Citação

OBrigado Imex, consegui aplicar outro filtro e deu certo
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Banco de Dados Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB