declare @y numeric(38,36), @x numeric(38,36)
select @y=0.263998462275450127016764362727123456
select @x=0.963998462275450127016764362727654321
select @y+@x --1
select @y*@x --2
select 0.263998462275450127016764362727123456*0.963998462275450127016764362727654321 --3结果:
1.227996924550900254033528725454777777
0.254494111676617352767868706335420
0.2544941116766173527678687063354196236问题:第二个结果为何不等于第三个结果?
所以打算验证一下效果,刚开始就发现上述问题!
select @y=0.263998462275450127016764362727123456
select @x=0.963998462275450127016764362727654321
select @y+@x --1
select @y*@x --2
select 0.263998462275450127016764362727123456*0.963998462275450127016764362727654321 --3
Type = SQL_VARIANT_PROPERTY(0.263998462275450127016764362727123456, 'basetype'),
[Precision] = SQL_VARIANT_PROPERTY(0.263998462275450127016764362727123456, 'Precision'),
[scale] = SQL_VARIANT_PROPERTY(0.263998462275450127016764362727123456, 'scale')