oracle字段拼接過程中以0開頭的小數,開頭的0消失

1.出現問題

    在做字段拼接的過程,查詢結果出現以0開頭的小數,開頭的0消失

2.問題解決

爲何小數點前0會省略,是因爲oracle數據庫中存在一個隱形類型轉換,在拼接的過程中小數自動轉成字符類型,相當於調用了to_char函數,所以丟失小數點前面的0

這裏操作就是把數值類型轉換爲字符型,即加上to_char(字段,’fm9999999999999990.00’) ,(查看錶結構設計,我這裏類型是number(16,2),所以設置前面小數點前面最多16位,後面保留2位)

其中9代表如果存在數字則顯示數字,不存在則顯示空格;
0代表如果存在數字則顯示數字,不存在則顯示0,即佔位符;
fm代表刪除如果是因9帶來的空格,則刪除。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章