Database
 sql >> Base de Dados >  >> RDS >> Database

Como arredondar números no SQL

Problema:


Você deseja arredondar um número para um número específico de casas decimais.

Exemplo:


Nosso banco de dados tem uma tabela chamada product com dados nas seguintes colunas:id , name e price_net .
id nome price_net
1 pão 2,34
2 croissant 1,22
3 rolo 0,68

Suponha que haja um imposto de 24% sobre cada produto e você queira calcular o preço bruto de cada item (ou seja, após impostos) e arredondar o valor para duas casas decimais.

Solução:

SELECT id, ROUND( price_net*1.24 , 2 ) as price_gross
FROM product;

Esta consulta retorna o preço bruto arredondado para duas casas decimais:
id preço_bruto
1 2,90
2 1,51
3 0,84

Discussão:


Se você quiser arredondar um número de ponto flutuante para um número específico de casas decimais no SQL, use a função ROUND. O primeiro argumento desta função é a coluna cujos valores você deseja arredondar; o segundo argumento é opcional e denota o número de casas para as quais você deseja arredondar. Por padrão, se você não especificar o segundo argumento, a função arredonda para o inteiro mais próximo.

Neste exemplo, não especificaremos o número de lugares para os quais queremos arredondar a coluna:
SELECT id, ROUND(price_net*1.24) as price_gross
FROM product;

E aqui está o resultado correspondente:
id preço_bruto
1 3
2 2
3 1