2011-02-08 151 views
3

我需要四捨五入的一些數據類型的SQL Server中的數字最接近2個地方四捨五入在SQL Server

例如,

Input: 123.10000000 
Output: 123.10 

感謝和問候,
伊斯梅爾

回答

6

您需要將其轉換爲:

Select Convert(numeric(19,2), @value)

可以使用Round功能也進行舍入:

Select Round(@Value, 2)

2

CONVERT(DECIMAL(12,2), ROUND(123.10000000, 2))做的伎倆?

+0

+1,只有`DECIMAL(12,2)`是比`MONEY`不太精確。 – 2011-02-08 10:17:05

+1

@Andriy - `money`會將它轉換爲小數點後4位,不過不是嗎?因此,輸出將是123.1000 – codingbadger 2011-02-08 10:34:13

1

你可以試試:

select round(123.10000000, 2) 

select cast(123.10000000 as decimal(12,2)) 
1
SELECT CAST(ROUND(InputValue, 2) AS money) AS OutputValue