Como arredondar valores decimais no SQL?
No SQL, podemos arredondar valores decimais usando a função ROUND(), que permite definir o número de casas decimais desejado.
Exemplo básico de ROUND
Se quisermos arredondar os preços de uma tabela produtos
para duas casas decimais:
SELECT nome, ROUND(preco, 2) AS preco_arredondado FROM produtos;
Aqui, os valores da coluna preco
serão arredondados para duas casas decimais.
Arredondamento para número inteiro
Se não especificarmos casas decimais, o ROUND()
arredondará para o inteiro mais próximo:
SELECT ROUND(15.78) AS valor_arredondado;
Isso retorna 16, pois o SQL segue a regra matemática de arredondamento.
Arredondando para cima com CEIL
Se precisarmos sempre arredondar para cima, usamos CEIL()
:
SELECT CEIL(15.2) AS valor_arredondado;
Isso retorna 16, pois CEIL()
sempre sobe para o próximo número inteiro.
Arredondando para baixo com FLOOR
Se quisermos sempre arredondar para baixo, usamos FLOOR()
:
SELECT FLOOR(15.9) AS valor_arredondado;
Isso retorna 15, pois FLOOR()
sempre desce para o número inteiro inferior.
Formatando números com FORMAT
No MySQL, podemos formatar valores com separadores:
SELECT FORMAT(1234.5678, 2) AS valor_formatado;
Isso retorna 1,234.57
, exibindo o número com separação de milhar e duas casas decimais.
Por que o arredondamento de valores é importante no SQL?
O arredondamento de valores no SQL é uma técnica essencial para aplicações financeiras, cálculos estatísticos e relatórios formatados. Em um sistema de vendas, por exemplo, exibir preços arredondados evita problemas na exibição de valores fracionados. O uso de ROUND()
é ideal para manter precisão, enquanto CEIL()
e FLOOR()
ajudam em situações específicas, como cálculo de lotes mínimos de produção. Além disso, bancos de dados como MySQL oferecem funções como FORMAT()
para melhorar a apresentação dos dados sem alterar os valores originais.
Algumas aplicações:
- Arredondamento de preços em lojas virtuais
- Formatação de valores em relatórios financeiros
- Cálculo de médias e totais arredondados
- Definição de valores inteiros para lotes de produção
- Exibição formatada de números em dashboards
Dicas para quem está começando
- Use
ROUND(valor, casas_decimais)
para arredondar para um número específico de casas - Utilize
CEIL()
para sempre arredondar para cima - Prefira
FLOOR()
para sempre arredondar para baixo - No MySQL,
FORMAT()
ajuda a exibir valores formatados sem modificar os dados - Evite arredondamentos excessivos se precisar de cálculos mais precisos
Contribuições de Carla Nunes