我有两张桌子,A& B.
表A有一个名为Nominal的列,它是一个浮点数。
表B有一个名为Units的列,它也是一个浮点数。
我有一个简单的选择查询,突出显示表A和表中的Nominals之间的任何差异。表B中的单位。
select coalesce(A.Id, B.Id) Id, A.Nominal, B.Units, isnull(A.Nominal, 0) - isnull(B.Units, 0) Diff
from tblA A full outer join tblB B
on tblA.Id = tblB.Id
where isnull(A.Nominal, 0) - isnull(B.Units, 0) <> 0
此查询有效。但是今天早上我有一个小问题。
查询在线显示有差异,
Id Nominal Units Diff
FJLK 100000 100000 1.4515E-11
显然,其中一个或两个数字都不是100,000。但是当我在这两个表(单独)上运行一个select查询时,这两个表都返回100,000我看不到哪个有小数位,为什么会这样?这是SQL Server中的某种默认显示吗?
答案 0 :(得分:0)
在excel中你会发现这种行为。
它是表示较低数字的标准方式。您获得的数字1.4515E-11
与1.4515 * 10^(-11)