SQL Server のdecimal
データ型は、列の各値の小数点以下の実際の桁数を格納していますか?
例えば
UPDATE [Mixes] SET [Concentration] = 0.0012500 WHERE [Id] = 1
どこ
Concentration Decimal(21,11)
ユーザーが入力した正確な「0.0012500」値を取得することは可能ですか、それとも別の列に入力された実際の小数点以下の桁数を保存する必要がありますか?
SQL Server のdecimal
データ型は、列の各値の小数点以下の実際の桁数を格納していますか?
例えば
UPDATE [Mixes] SET [Concentration] = 0.0012500 WHERE [Id] = 1
どこ
Concentration Decimal(21,11)
ユーザーが入力した正確な「0.0012500」値を取得することは可能ですか、それとも別の列に入力された実際の小数点以下の桁数を保存する必要がありますか?
decimal 型は、指定された精度まで数値を格納します。フォーマットは保存されません。これは、先頭にゼロを付けて int を保存するようなものです。先行ゼロは数値を変更しません。ユーザーが入力した形式が必要な場合は、それを個別に保存するか、数値を varchar として保存する必要があります。
小数列だけを使用して入力した後は、0.0012500と0.00125の違いを区別することはできません。テキスト形式で保存するか、入力方法に関する情報を解析して、その情報を保存する必要があります。
小数点以下の桁数を個別に保存する必要があります。