背景
SQLで割り算等をする際は、小数点の扱いをどうするかユーザに確認する必要がある
小数点以下の扱いについて
●何桁まで表示させるか
型「DECIMAL」で実現する。小数点を3桁まで表示させる場合は「DECIMAL(10,3)」等にする
●四捨五入する場合
組み込み関数「ROUND」を使用する
--例)
SELECT ROUND(@value,2) AS '四捨五入'
●切り捨てる場合
組み込み関数「FLOOR」を使用する
--例)
SELECT FLOOR(@value) AS '切り捨て'
サンプル
上記のコードは以下。
DECLARE
@value DECIMAL(10,3)
SET @value = 10.1 /3
--小数点が3桁表示されていることを確認
SELECT @value AS '関数未使用'
--四捨五入の場合① ※小数点第3位を四捨五入し、場合により小数点第2位を繰り上げる
SELECT ROUND(@value,2) AS '四捨五入①'
--四捨五入の場合② ※小数点第2位を四捨五入し、場合により小数点第1位を繰り上げる
SELECT ROUND(@value,1) AS '四捨五入②'
--切り捨てるの場合 ※小数点を切り捨てる
SELECT FLOOR(@value) AS '切り捨て'