Returns the value of the specified number, rounded to a given number of decimal places.
round(number, decimal_places)
is any exact numeric (numeric, dec, decimal, tinyint, smallint, or int), approximate numeric (float, real, or double precision), or money column, variable, constant expression, or a combination of these.
is the number of decimal places to round to.
select round(123.4545, 2)
---------- 123.4500
select round(123.45, -2)
---------- 100.00
select round(1.2345E2, 2)
----------------- 123.450000
select round(1.2345E2, -2)
----------------- 100.000000
round, a mathematical function, rounds the number so that it has decimal_places significant digits.
A positive decimal_places determines the number of significant digits to the right of the decimal point; a negative decimal_places, the number of significant digits to the left of the decimal point.
Results are of the same type as number and, for numeric and decimal expressions, have an internal precision equal to the precision of the first argument plus 1 and a scale equal to that of number.
round always returns a value. If decimal_places is negative and exceeds the number of significant digits in number, Adaptive Server returns a result of 0. (This is expressed in the form 0.00, where the number of zeros to the right of the decimal point is equal to the scale of numeric.) For example, the following returns a value of 0.00:
select round(55.55, -3)
For general information about mathematical functions, see “Mathematical functions”.
SQL92 – Compliance level: Transact-SQL extension.
Any user can execute round.