SQL Server decimal
数据类型是否存储了列中每个值的小数点后的实际位数?
例如
UPDATE [Mixes] SET [Concentration] = 0.0012500 WHERE [Id] = 1
,其中
Concentration Decimal(21,11)
是否可以检索用户输入的确切“0.0012500”值,或者是否需要存储在另一列中输入的实际小数位数?
答案 0 :(得分:2)
十进制类型将数值存储到指定的精度。它不存储格式。这就像用前导零保存一个int。前导零不会更改数值。如果需要用户输入的格式,则需要单独存储或将数字存储为varchar。
答案 1 :(得分:1)
您必须分别存储小数位数。
答案 2 :(得分:1)
在使用十进制列输入后,您将无法区分0.0012500和0.00125之间的区别。您需要以文本形式存储或解析有关输入方式的信息并存储该信息。