2015-12-14 103 views
1

在Netezza中,該表達式自動舍入結果,我該如何避免這種情況?我需要保持爲1.5的原始計算出的值,而不是1Netezza自動舍入十進制值

select cast ((4 -1)/2 AS NUMERIC (15,6)) as result --> gives 1.0000.. 

回答

1

改變一個參數,以NUMERIC避免整數除法

SELECT (4 -1)/2.0 AS result 

或:

SELECT (4-1)/CAST(2 AS NUMERIC(15,6)) AS result 

分部:

1/10 -> 0 
1.0/10 -> 0.1 
1/10.0 -> 0.1 
1.0/10.0 -> 0.1 
+1

謝謝,wi只要它允許,我會盡快將其標記爲已接受的答案。 – Victor