[firebase-br] Duvida com select

Marcelo - MK Softwares marcelo em mksoftwares.com.br
Qui Out 3 09:35:09 -03 2019


Bom dia

Estou criando uma sql que me retorna o total do produto, até ai tudo 
bem. Mas esta dando um erro na multiplicação. Vou expor a situação:

Sql:
select
     /* outros campos que não vem ao caso*/
     ((v.quant * v.precovenda ) - v.desconto + v.acrescimo) totalproduto
from vendapdv2 v;

Erro retornado:
Unsuccessful execution caused by system error that does not preclude 
successful execution of subsequent statements.
Integer overflow.  The result of an integer operation caused the most 
significant bit of the result to carry.

Valores dos campos:
v.quant decimal(18,5)= 123323333,000
v.precovenda decimal(18,5) = 7,99
v.desconto decimal(18,5) = 0
v.acrescimo decimal(18,5) = 0

Concordo que ninguém irá vender essa quantidade de mercadoria em um PDV 
de supermercado, mas é um teste de estresse, pra não ocorrer falhas. Mas 
a dúvida, por que me retorna um erro de integer overflow sendo que os 
campos são decimal?
Se retirar a multiplicação da consulta, os valores são retornados sem 
erro algum!




Mais detalhes sobre a lista de discussão lista