私はドル金額のパーセント値を計算しようとしています。 50%で、半分のペニーが得られることがあります。それを最も近いセントに丸める必要があります。なぜSQL Server 2000のTSQLは小数点以下を丸めますか?
- 4.39
- 2.49
:私は、次の値をとる場合
round(retail * 0.5, 2, 0)
が、私は異なる結果を得る:次のようにSQLで
は、私の計算があります包まれていない私は得る:
- 4.39 - > 2.195
- 2.49 - > 1.245
丸めたとき私が取得:
- 2.195 - > 2.19
- 1.245 - > 1.25
私はこれが「銀行家の丸め」の一形態だと言われていますが、 keは、丸め方向に影響する値が整数値です。
私の問題は、最高値が2.20に丸められることです。これが実際に銀行家の丸めであり、ここで整数値の影響を受けている場合、誰でもこの動作を防ぐための例がありますか?それは銀行家の丸めではない場合、誰かが説明を提供し、潜在的には通常の丸めの動作を得るための解決策を提供することができますか?
ありがとうございます!
だけでなく、私は、SQL Server 2008およびIでこれを試してみました2.200を得る;あなたはこれを試したが、SQL 2000であなたを助けることができない:選択ラウンド(4.39 * 0.5,2,0)=>私の結果= 2.2。 – Pleun