如何設定oracle保留數字轉字串後小數點前的0 |
答題得分者是:st33chen
|
junlin
初階會員 ![]() ![]() 發表:66 回覆:94 積分:42 註冊:2002-03-13 發送簡訊給我 |
|
st33chen
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:15 回覆:591 積分:1201 註冊:2005-09-30 發送簡訊給我 |
|
junlin
初階會員 ![]() ![]() 發表:66 回覆:94 積分:42 註冊:2002-03-13 發送簡訊給我 |
我現在就是用這種作法, 只是覺得蠻笨的, 所以想問問有沒有其他解法 ^ ^
我是把這段寫成一個function, 但這樣SQL就會變的很長很長. ===================引 用 st33chen 文 章=================== 您好, format string 我還找到解答, 但是測了一下下面的 sql 句可行, 先參考一下 select DECODE(SUBSTR(TO_CHAR(0.123),1,1), '.','0') || TO_CHAR(0.123) from dual |
st33chen
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:15 回覆:591 積分:1201 註冊:2005-09-30 發送簡訊給我 |
1. sorry 提供了一個笨方法
2. 不懂您 "我是把這段寫成一個function, 但這樣SQL就會變的很長很長." 的意思 把 DECODE(SUBSTR(TO_CHAR(anum),1,1), '.','0') || TO_CHAR(anum) 寫成一個 stored function 假設為 to_char0 那 sql 就變成 select to_char0(0.123) from dual 為何會很長很長?
------
IS IT WHAT IT IS 我是 李慕白 請倒著唸. 又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦); 都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲.
編輯記錄
st33chen 重新編輯於 2009-08-15 07:14:44, 註解 無‧
|
junlin
初階會員 ![]() ![]() 發表:66 回覆:94 積分:42 註冊:2002-03-13 發送簡訊給我 |
抱歉, 沒有不敬的意思,
還是感謝你提供了這個方法, 這個方法我在GOOGLE上也有找到, 目前也是用這個方法, 只是覺得去判斷第1個char是不是小數點後再決定要不要加0, 這種方法蠻笨的, 但不可諱言的, 它的確可以解決我的問題, 我是覺得這種問題應該很多人以前就會遇到了, 不太可能是用這種解法吧. 不知道oracle有沒有參數可以直接設定, 就像是設定日期的格式一樣. 之所以會說SQL變很長, 是因為複雜的SQL時, 會多很多沒有意義的code(只是單純補0), 個人感覺有點影響可讀性, 例如: select to_char0(col0) , to_char0(col1) , to_char0(col2) , to_char0(col3), nvl(col4, to_char(col5), to_char0(col4)) from dual ===================引 用 st33chen 文 章=================== 1. sorry 提供了一個笨方法 2. 不懂您 "我是把這段寫成一個function, 但這樣SQL就會變的很長很長." 的意思 把 DECODE(SUBSTR(TO_CHAR(anum),1,1), '.','0') || TO_CHAR(anum) 寫成一個 stored function 假設為 to_char0 那 sql 就變成 select to_char0(0.123) from dual 為何會很長很長? |
cobraliu
中階會員 ![]() ![]() ![]() 發表:15 回覆:75 積分:83 註冊:2007-11-22 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |