Función ROUND - Amazon Redshift

Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del 1 de noviembre de 2025. Si desea utilizar las UDF de Python, créelas antes de esa fecha. Las UDF de Python existentes seguirán funcionando con normalidad. Para obtener más información, consulte la publicación del blog.

Función ROUND

La función ROUND redondea los números hasta el valor entero o decimal más cercano.

La función ROUND puede incluir, de forma opcional, un segundo argumento como un valor INTEGER que indique la cantidad de lugares decimales para el redondeo, sea cual sea la dirección. Cuando no se proporciona el segundo argumento, la función redondea al número entero más cercano. Cuando se especifica el segundo argumento integer, la función redondea al número más cercano con una precisión de hasta integer decimales.

Sintaxis

ROUND(number [ , integer ] )

Argumentos

número

Un número o una expresión que toma el valor de un número. Puede ser el tipo DECIMAL, FLOAT8 o SUPER. Amazon Redshift puede convertir implícitamente otros tipos de datos numéricos.

integer

(Opcional) Un número INTEGER que indica la cantidad de lugares decimales para el redondeo, sea cual sea la dirección. El tipo de datos SUPER no se admite para este argumento.

Tipo de devolución

ROUND devuelve el mismo tipo de datos numéricos como el número de entrada.

Cuando la entrada es del tipo SUPER, la salida conserva el mismo tipo dinámico que la entrada mientras que el tipo estático sigue siendo el tipo SUPER. Cuando el tipo dinámico de SUPER no es un número, Amazon Redshift devuelve NULL.

Ejemplos

En los siguientes ejemplos se utiliza la base de datos de ejemplo TICKIT. Para obtener más información, consulte Base de datos de muestra.

Para redondear la comisión pagada para una transacción dada hasta el número entero más cercano, use el siguiente ejemplo.

SELECT commission, ROUND(commission) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28 | +------------+-------+

Para redondear la comisión pagada para una transacción dada hasta el primer lugar decimal, use el siguiente ejemplo.

SELECT commission, ROUND(commission, 1) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 28.1 | +------------+-------+

Para ampliar la precisión en la dirección opuesta a la del ejemplo anterior, utilice el ejemplo siguiente.

SELECT commission, ROUND(commission, -1) FROM sales WHERE salesid=10000; +------------+-------+ | commission | round | +------------+-------+ | 28.05 | 30 | +------------+-------+