Boa Tarde amigos do Fórum, andei meio sumido mas estamos ai na ativa de novo rs rs.
Estou com o seguinte problema, desenvolvi um SQL relativamente simples, que me retorna o Número de um determinado pedido, Data de emissão, a condição de pagamento usada, o valor dos itens, o Valor do Desconto e o Valor Liquido.
Na minha tabela o valor do DESCONTO é retornado no formato de REAIS, preciso então desenvolver um cálculo que me retorne esse valor em %.
O problema ocorre quando o pedido não tem desconto, no momento de fazer o cálculo ocorre o erro de divisão por zero:
Divide by zero error encountered.
como eu poderia fazer essa CÁLCULO validando os pedidos que não tem desconto para evitar o tal erro de divisão por 0?
Segue Script:
SELECT
[Pre Venda].NumeroDaPreVenda,
[Pre Venda].DataDaPreVenda,
[Pre Venda].CódigoDoCliente,
Clientes.NomeDoCliente,
[Pre Venda].CódigoDoFuncionário,
Funcionários.NomeDoFuncionário,
ROUND(SUM([Detalhes da Pre Venda].TotalDaLinha), 2) As VL_Itens,
[Pre Venda].DescontoAcrescimo,
[b]ROUND(SUM((dbo.[Pre Venda].DescontoAcrescimo * 100) / (dbo.[Pre Venda].TotalDaPreVenda + (dbo.[Pre Venda].DescontoAcrescimo * -1))), 2) AS PC_Desc,[/b]
[Pre Venda].TotalDaPreVenda,
Portador.NomeDoPortador
FROM
[Pre Venda]
INNER JOIN
[Detalhes da Pre Venda] ON [Pre Venda].NumeroDaPreVenda = [Detalhes da Pre Venda].NumeroDaPreVenda
INNER JOIN
Funcionários ON [Pre Venda].CódigoDoFuncionário = Funcionários.CódigoDoFuncionário
INNER JOIN
Clientes ON [Pre Venda].CódigoDoCliente = Clientes.CódigoDoCliente
INNER JOIN
tblCondicao ON [Pre Venda].CódigoDaCondição = tblCondicao.ID
INNER JOIN
Portador ON [Pre Venda].CódigoDoPortador = Portador.CódigoDoPortador
GROUP BY
[Pre Venda].NumeroDaPreVenda,
[Pre Venda].DataDaPreVenda,
[Pre Venda].CódigoDoCliente,
Clientes.NomeDoCliente,
[Pre Venda].CódigoDoFuncionário,
Funcionários.NomeDoFuncionário,
[Pre Venda].DescontoAcrescimo,
[Pre Venda].TotalDaPreVenda,
Portador.NomeDoPortador
Question
Vinicius Schuh
Boa Tarde amigos do Fórum, andei meio sumido mas estamos ai na ativa de novo rs rs.
Estou com o seguinte problema, desenvolvi um SQL relativamente simples, que me retorna o Número de um determinado pedido, Data de emissão, a condição de pagamento usada, o valor dos itens, o Valor do Desconto e o Valor Liquido.
Na minha tabela o valor do DESCONTO é retornado no formato de REAIS, preciso então desenvolver um cálculo que me retorne esse valor em %.
O problema ocorre quando o pedido não tem desconto, no momento de fazer o cálculo ocorre o erro de divisão por zero:
Divide by zero error encountered.
como eu poderia fazer essa CÁLCULO validando os pedidos que não tem desconto para evitar o tal erro de divisão por 0?
Segue Script:
Edited by Vinicius SchuhLink to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.