ただぶろぐ このページをアンテナに追加 RSSフィード Twitter

2006-12-18

[][]切り捨て、切り上げ、四捨五入(マイナス値は要注意) 10:55 切り捨て、切り上げ、四捨五入(マイナス値は要注意)を含むブックマーク

SQLで、切り捨て、切り上げ、四捨五入は、全部round関数しかないと思ってました。


切り捨てFLOOR引数nに対して、それ以下で最も大きい整数
切り上げCEILまたはCEILING引数nに対して、それ以上で最も小さい整数
四捨五入ROUND四捨五入

知らなかった。。

小数以下を細かく設定する場合はROUNDでしょうけども。

面倒なやりかたをしていた自分が恥ずかしい。


あ。でもマイナス数値の場合、気をつけないと予期しない値になるかも。


select
	ceiling(-2.5) as CEIL,
	floor(-2.5) as FLOOR,
	round(-2.5, 0) as ROUND

の結果は

CEILFLOORROUND
-2-3-3

む。厳密には、切り捨て、切り上げにならないか?

たまりたまり 2011/11/09 10:13 結果はあってるのでは?

htadahtada 2011/11/10 02:40 たまりさん。コメントありがとうございます。
「切り捨て」は、少数を無かったことにする、0 に近づく方向へ寄せる感じがしているので、マイナスの場合は要注意かなと思って書いた...のだと思います。
今思えば、FLOORやCAILは「切り捨て/切り上げ」ではなく、「正の方に寄せる/負の方に寄せる」ですね。

トラックバック - http://d.hatena.ne.jp/htada/20061218