float に変換される SQL int の場合、浮動小数点数の精度を設定するにはどうすればよいですか?
これは、小数点以下 2 桁または 3 桁に切り捨てたい選択です。
AVG(Cast(e.employee_level as Float))avg_level,
ありがとう!
float に変換される SQL int の場合、浮動小数点数の精度を設定するにはどうすればよいですか?
これは、小数点以下 2 桁または 3 桁に切り捨てたい選択です。
AVG(Cast(e.employee_level as Float))avg_level,
ありがとう!
TSQL では、 floatに 24 または 53の 2 つの異なるサイズを指定できます。これにより、精度がそれぞれ 7 桁または 15 桁に設定されます。
設定した小数点以下の桁数に切り捨てるだけの場合は、 ROUNDを使用できます。つまり、次のようになります。
ROUND(AVG(CAST(e.employee_level as float)), 3)
原則として、浮動小数点数の小数点以下の桁数は指定できません。浮動小数点データ型は、任意の値に最も近い浮動小数点近似を格納します。最も近い浮動小数点近似では、必要な桁数が得られない可能性があります。3桁目以降のすべての桁を抑制できる場合もありますが、それは値自体ではなく、値の外観のみを変更します。
整数は別の話です。整数(格納、変換、または浮動小数点データ型へのキャスト)は、正確に広い範囲に格納されます。浮動小数点データ型は、整数の小数単位を格納する必要はありません。
私はあなたのためのベストプラクティスはすることですが、お勧めします