Speed A b c Total
129 11 4 2.75 354.75
91 9 6 1.5 136.5
166 19 8 2.375 395.08
164 26 12 2.16666666666667 355.88
146 11 6 1.83333333333333 267.18
147 16 8 2 294
201 8 3 2.66666666666667 536.67
164 4 2 2 328
186 8 6 1.33333333333333 247.38
165 7 4 1.75 288.75
171 10 4 2.5 427.5
104 5 4 1.25 130
1834 134 67 2 3668
Iam使用total = Speed * c 但是,如果我为最后一列1834添加所有值,则值不会相等。我的安培数减少了100个。
答案 0 :(得分:0)
第一个:
Total = Speed * c
,这个关于你的输出的表达式我想是用逗号后面的第二个数字四舍五入。
第二个:
您已在最后一行中输入2作为c
的值。为什么?这是以前所有行的平均值?
所以,如果你采取最后一个和第二个,那么你就会知道你与最后一行和其他行有所不同
答案 1 :(得分:0)
Approximate-number data types for use with floating point numeric data.
Floating point data is approximate; therefore, not all values in the data
type range can be represented exactly.
Float具有默认的15位精度。因此,当您的号码有更多数字时,它将使其余数字四舍五入。
您显示的总数只有2位小数。你可以考虑永久地将c改为十进制(20,14)。如果将其转换为十进制,则结果如下:这应该更精确:
select cast(c as decimal(20, 14)) * speed as Total
from table