sql >> Base de Datos >  >> RDS >> Database

Cómo redondear números en SQL

Problema:

Quiere redondear un número a un número específico de lugares decimales.

Ejemplo:

Nuestra base de datos tiene una tabla llamada product con datos en las siguientes columnas:id , name y price_net .

id nombre precio_neto
1 pan 2.34
2 croissant 1.22
3 rollo 0,68

Suponga que hay un impuesto del 24 % sobre cada producto y desea calcular el precio bruto de cada artículo (es decir, después de impuestos) y redondear el valor a dos decimales.

Solución:

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

Esta consulta devuelve el precio bruto redondeado a dos decimales:

id precio_bruto
1 2,90
2 1,51
3 0,84

Discusión:

Si desea redondear un número de coma flotante a un número específico de lugares decimales en SQL, use la función ROUND. El primer argumento de esta función es la columna cuyos valores desea redondear; el segundo argumento es opcional y denota el número de lugares a los que desea redondear. De forma predeterminada, si no especifica el segundo argumento, la función se redondea al entero más próximo.

En este ejemplo, no especificaremos el número de lugares a los que queremos redondear la columna:

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

Y aquí está el resultado correspondiente:

id precio_bruto
1 3
2 2
3 1