SQLServerで、計算結果を小数値で取得する方法です。
サンプル
SQLServerで結果が小数値となるを計算をしても整数で返ってしまいます。
ダメな例)8/100 を計算する
1 2 |
select 8/100 ⇒0 |
こういう場合は明示的に小数型(float)に変換して計算すればOKです。
OKな例)8/100 を計算する
1 2 |
select convert(float, 8)/100 ⇒0.08 |
備考
- 小数値となるはずの結果が整数となる理由は、データ型には優先順位があることが原因です。
参考サイト
- データ型の優先順位 (Transact-SQL)(Microsoft公式サイト)