2014-02-12 95 views
1

我喜歡這個刪除零從decmial

0.00234690616839645663803848176618444236941 

的方式,我想有一個輸出

2.3 

首先我刪除了零

select replace(0.00234690616839645663803848176618444236941,0) from dual; 

然後我嘗試做圓的功能,但它給我零任何想法我們如何能得到這個

select round(replace(0.00234690616839645663803848176618444236941,0)) from dual; 
+0

其答案是否在http://stackoverflow.com/a/19551983/1967396對你的工作給予? – Floris

+0

不,它沒有。我試過沒有得到我想要的。 – Awais

回答

2

你可以試試這個:

select round(0.00234690616839645663803848176618444236941 * 1000,1) from dual; 

結果:

2.3 
2

當你去掉的零,如果只剩下0.23 .....

Select round (.23, 0)會返回0,因爲你告訴數據庫四捨五入到小數點後0位。

如果您將您的替換結果乘以10,那會得到您想要的結果。不知道你在做什麼讓任何意義,但它的工作原理:

select round (10 * (replace(0.00234690616839645663803848176618444236941,0)),1) from dual; 

SQL Fiddle