1. 程式人生 > >oracle中to_char函式轉換數字格式不正確的問題

oracle中to_char函式轉換數字格式不正確的問題

今天在工作中遇到將金額的number型別轉換成char型別,但是使用to_char()函式顯示的結果一直期望的結果。經過在網上查閱一番,總結如下:

我們使用Oracle 的SQL 函式 to_char可以實現這種轉換。
這個函式用來將DATE或NUMBER資料型別轉換成可顯示的字串,格式是to_char(number_type, format_mask)。

  1. 格式’999.99’,9表示對應的某一個指定位數的值,如果是值是0則忽略不顯示,如果指定位數沒有值,則以空格表示
  2. 格式’0990.990’,0表示對應的某一個指定位數的值,如果是值是0則顯示為0,如果是沒有值也顯示為0
  3. 格式’FM990.90’,FM表示將顯示出來的字串定位數沒有值而顯示的空格清理掉,作用和ltrim類似
SELECT TO_CHAR( 00.0001, 'FM99990.0099' ) price FROM dual;  --輸出0.0001
SELECT TO_CHAR( 1001.000, 'FM99990.0099' ) price FROM dual; --輸出1001.00