トップページに戻る    次のSQLパズルへ    前のSQLパズルへ

10-103 小数点の位置を揃える

SQLパズル

テーブル
変換前
-------
10.1111
10.111
10.11
10.1
10
1
0.1111

数値の小数点の位置を揃えて出力する。

出力結果
変換前   変換後
-------  -------
10.1111  10.1111
10.111   10.111
10.11    10.11
10.1     10.1
10       10
1         1
0.1111    0.1111

こちらを参考にさせていただきました


SQL

select 変換前,
rtrim(rtrim(to_char(変換前,'90.9999'),'0'),'.') as 変換後
from (select 10.1111 as 変換前 from dual
union select 10.111 from dual
union select 10.11 from dual
union select 10.1 from dual
union select 10 from dual
union select  1 from dual
union select  0.1111 from dual)
order by 変換前 desc;


解説

to_char関数で小数点の位置を揃えてます。