Pular para o conteúdo

Divisão inteira no SQLite e percentuais que desaparecem da consulta

Teste tipos numéricos e o momento da conversão na divisão, mantendo denominador zero como indicador indefinido.

Uma consulta pode apresentar zero mesmo quando o numerador é positivo. No SQLite, a divisão entre dois inteiros pode devolver um inteiro truncado. Este laboratório compara a operação antes e depois da conversão de tipo, preservando também uma observação sem denominador válido.

Quatro registros fictícios

Os valores são inteiros pequenos, sem risco de estouro numérico neste exercício. O indicador é definido como numerador dividido pelo denominador, depois expresso em percentual. Não corresponde a uma taxa contratual ou rentabilidade apurada para uma empresa real.

Registro Numerador Denominador Percentual matemático
A 1 4 25%
B 2 5 40%
C 7 3 Aproximadamente 233,3333%
D 5 0 Não definido

O momento da conversão importa

Dividir primeiro os inteiros e multiplicar por 100 depois gera zero para A, zero para B e 200 para C. Converter esse resultado já truncado para REAL não recupera a parcela descartada.

A consulta de comparação converte o numerador antes da divisão, obtendo 25, 40 e aproximadamente 233,3333. Multiplicar por 100 antes de dividir, mantendo apenas inteiros, produz 25, 40 e 233: dois resultados parecem corretos, mas C continua truncado.

Para D, a consulta devolve NULL e o demonstrativo apresenta o indicador como não definido. Substituir esse retorno por zero sugeriria uma proporção de 0% que os dados não sustentam. Essa linha não é excluída do controle de cobertura.

Precisão e alcance

O programa confere os tipos retornados pelo SQLite e compara os resultados com frações exatas calculadas em Python. Para a consulta com REAL, usa tolerância numérica explícita. A conversão demonstra o efeito de tipo, mas não transforma ponto flutuante em aritmética decimal exata para dinheiro.

O pacote reúne entradas, quatro métodos de consulta, resultados e controle. Não soma os percentuais nem cria um indicador agregado, porque o exercício não fornece significado econômico comum aos denominadores.

A documentação de expressões do SQLite define a aritmética dos operadores. O laboratório acrescenta consultas executáveis à conferência de representação numérica realizada na assistência técnica contábil.

Falar pelo WhatsApp