ROUND (Transact-SQL)
Zwraca wartość liczbową, zaokrągloną do określonej długości lub precyzji.
ROUND ( numeric_expression , length [ ,function ] )
Argumenty
numeric_expression
Is wyrażenie kategorii typu dokładne dane liczbowe numerycznych lub przybliżonej, z wyjątkiem bit Typ danych.length
Is the precision to which numeric_expression is to be rounded.length must be an expression of type tinyint, smallint, or int.Kiedy length jest liczbą dodatnią, numeric_expression jest zaokrąglana do liczby dziesiętnej pozycji określonej przez length. Kiedy length jest liczbą ujemną numeric_expression zaokrągla się po lewej stronie przecinka dziesiętnego w sposób określony przez length.function
Is the type of operation to perform.function must be tinyint, smallint, or int.Kiedy function argument zostanie pominięty lub ma wartość 0 (domyślnie) numeric_expression jest zaokrąglana. Jeżeli określono wartość inną niż 0 numeric_expression zostanie obcięta do liczby całkowitej.
Zwracane typy
Zwraca wartość tego samego typu co numeric_expression*.*
Remarks
ZAOKRĄGLONE zawsze zwraca wartość.Jeśli length jest ujemny i większy niż liczba cyfr przed dziesiętny, OKRĄGŁE zwraca wartość 0.
Przykład |
Wynik |
---|---|
ROUND(748.58,-4) |
0 |
ROUND zwraca zaokrąglony numeric_expression, niezależnie od typu danych, gdy length jest liczbą ujemną.
Przykłady |
Wynik |
---|---|
ROUND(748.58,-1) |
750.00 |
ROUND(748.58,-2) |
700.00 |
ROUND(748.58,-3) |
1000.00 |
Przykłady
A.Za pomocą ROUND i oszacowań
W poniższym przykładzie przedstawiono dwa wyrażenia, które wskazują za pomocą ROUND Ostatnia cyfra jest zawsze szacowania.
SELECT ROUND(123.9994, 3), ROUND(123.9995, 3)
GO
Here is the result set.
----------- -----------
123.9990 124.0000
B.Za pomocą ROUND i zaokrąglania przybliżeń
W poniższym przykładzie pokazano zaokrąglania i przybliżeń.
SELECT ROUND(123.4545, 2);
GO
SELECT ROUND(123.45, -2);
GO
Here is the result set.
----------
123.4500
(1 row(s) affected)
--------
100.00
(1 row(s) affected)
C.Za pomocą ROUND do obcinania
W poniższym przykładzie użyto dwóch SELECT instrukcje do wykazania, różnica zaokrąglania i obcinania. Pierwsza instrukcja zaokrągla wyniki.Druga instrukcja obcina wynik.
SELECT ROUND(150.75, 0);
GO
SELECT ROUND(150.75, 0, 1);
GO
Here is the result set.
--------
151.00
(1 row(s) affected)
--------
150.00
(1 row(s) affected)