Problemas de arredondamento em algarismos decimais no SQL

Autor: Roger Morrison
Data De Criação: 25 Setembro 2021
Data De Atualização: 11 Poderia 2024
Anonim
ARREDONDAMENTO DE NÚMEROS INTEIROS E DECIMAIS
Vídeo: ARREDONDAMENTO DE NÚMEROS INTEIROS E DECIMAIS

Contente

A linguagem SQL automaticamente arredonda números se a coluna da tabela na qual você irá salvar permite apenas uma certa precisão de casas decimais. É possível trabalhar com problemas de precisão usando a função "round" (arredondamento) do SQL. Esta função permite controlar o modo como o SQL armazena os valores numéricos nas tabelas do banco.


Saiba como arredondar números no SQL (Hemera Technologies/AbleStock.com/Getty Images)

Problema

Você notará o problema de arredondamento do SQL quando olhar os dados nas tabelas. O valor numérico exibido não é o mesmo que você salvou através do comando "insert" (inserir). Os tipos de dados das colunas SQL permitem definir a precisão do ponto decimal. Se deseja ter apenas duas casas decimais e tentar salvar um número com três, o SQL arredondará o valor.

Estrutura da tabela

Você pode alterar o tipo de dado de uma coluna utilizando um editor de tabelas SQL. É possível editar suas tabelas no Microsoft SQL Server Management Studio, que vem incluso com o SQL Server. Clique com o botão direito na tabela e escolha "Modify" (Modificar). Selecione a precisão na lista de tipo de dado da coluna para aumentar o número de casas decimais e corrigir o problema de arredondamento.


Função "Round" (Arredondamento)

Se você não quer modificar o tipo de dado da tabela, use a função de arredondamento para alterar o comportamento de armazenamento numérico. Arredonde para cima, para baixo ou deixe a função realizar o arredondamento padrão de valores decimais. Por exemplo, o seguinte código arredonda para cima:

round(column, 2, -1)

Essa função arredonda em duas casas decimas, sempre para cima. Retirar o parâmetro "-1" faz com que o SQL execute o arredondamento padrão, ou seja, para cima se o valor for maior ou igual a "5" e para baixo se o valor for menor.

Considerações

Quando altera o comportamento de arredondamento no SQL, você também deve verificar qualquer coluna que tenha um somatório de números arredondados. Essa coluna terá um valor incorreto, então será necessário recalcular o somatório para corrigir possíveis erros.