New versions: Dev (3.16) | Latest (3.15) | 3.14 | 3.13 | 3.12 | 3.11 | 3.10 | 3.9 | 3.8 | Old versions: 3.7 | 3.6 | 3.5 | 3.4 | 3.3

ROUND

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

The ROUND() function rounds a numeric value to its nearest integer, or optionally, to the nearest decimal precision.

SELECT 
  round(1.7), 
  round(-1.7);
create.select(
  round(1.7), 
  round(-1.7)).fetch();

The result being

+-------+-------+
| round | round |
+-------+-------+
|     2 |    -2 |
+-------+-------+

Dialect support

This example using jOOQ:

round(1.7)

Translates to the following dialect specific expressions:

-- ACCESS, AURORA_MYSQL, AURORA_POSTGRES, BIGQUERY, DB2, EXASOL, FIREBIRD, HANA, HSQLDB, IGNITE, INFORMIX, MARIADB, MEMSQL, 
-- MYSQL, ORACLE, POSTGRES, REDSHIFT, SNOWFLAKE, SQLITE, TERADATA, VERTICA, YUGABYTE
round(1.7E0)

-- ASE, SQLDATAWAREHOUSE, SQLSERVER, SYBASE
round(1.7E0, 0)

-- COCKROACHDB
round(CAST(CAST(1.7E0 AS double precision) AS numeric))

-- DERBY
CASE
  WHEN (1.7E0 - floor(1.7E0)) < 5E-1 THEN floor(1.7E0)
  ELSE ceil(1.7E0)
END

-- H2
round(CAST(1.7E0 AS double))

(These are currently generated with jOOQ 3.16, see #10141), or translate your own on our website

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo