1. 程式人生 > >to_char中的保留小數的用法

to_char中的保留小數的用法

表示式to_char(值,'保留位數示範數字'),如to_char(2222.22222,'9999.99')

select to_char(222.222222,'999.99') as 值 from dual

查詢結果:

 

但是我們在使用的時候多多少少會出現一些問題:

問題一:'保留位數示範數字'不是使用‘9’

select to_char(222.222222,'222.22') as 值 from dual

這樣查詢會報錯:因為2不是字元格式的關鍵字,必須是9

問題二:小數點位數前保留位數不足

select to_char(222.222222,'99.99') as 值 from dual

 上面的sql小數點前面有三位數,但是你的小數前面的保留數值只有兩位值就會引發問題,查詢出來的結果不是你想要的

查詢結果:

注意這並不是你裝的oracle,會查詢客戶端出現問題,也不是亂碼。

問題三:to_char中的第二個引數的小數點後面位數高於第一個引數,會用0補齊

select to_char(222.22,'999.999999') as 值 from dual

查詢結果:

問題四:to_char中的第二個引數的小數點前面位數高於第一個引數,會用空格補齊

正常:select to_char(222.22,'999.99') as 值 from dual

高於:select to_char(222.22,'99999999999999999999999.99') as 值 from dual

查詢結果如圖:

從圖中可以很明顯的看出來高於的查詢語句數值前面多出很多空格

二、介紹一下連線字元‘||’的使用

常見:百分號,單位符號,價錢等等的連線

1.百分號

select 22.22||'%' as 值 from dual

查詢結果:

2.價錢

select '¥'||22.22 as 值 from dual

查詢結果:

在大型的sql中最好少用‘||’,應為會影響效能



轉載:https://www.jianshu.com/p/8f0f5c4398ad