SQLでの切上げ(Oracle)

Oracleの関数で、小数第○位切捨てにはtrunc関数が使えます。

trunc(column, 2) とすれば、小数第三位切捨てとなります。

マイナスを指定すれば整数の上位桁による切捨て(十の位、百の位など)も可能です。



が、切り上げに関しては整数値への切上げのceilという関数しかありません。

四捨五入もあるのに、なんで切り上げだけ小数桁に対応していないのでしょうか。



とはいえやりようによってはできます。

ceil(column * 100) / 100 とすれば、小数第二位にて切上げできます。

100の位でやりたければ*と/を逆にすればよいです。



切上げを手で実装するよりははるかに楽だと思います。

できることとやりたいことのギャップを見極めて、その差を埋める何かを考えればいいわけですね。



コメント

人気の投稿