sql server十进制数据类型问题

时间:2017-05-15 06:32:41

标签: sql-server tsql sql-server-2012

表中的十进制数据类型长度= 9,精度= 10,比例= 2, @Bvisits中的实际值= 8.00

declare @Bvisits decimal,@ActualVisit decimal,@Ptax decimal = 1.995;
select @Bvisits = BalanceVisit from PakacgeTb where PackageID = 25306;

set @ActualVisit = @Bvisits - @Ptax;

select @ActualVisit as VIP

结果是6。

但是当我在实际存储过程中使用它时,它将结果更新为4.67而不是6为什么即使我使用1.9而不是1.995也会出现问题。

1 个答案:

答案 0 :(得分:0)

试试这样:

declare @Bvisits decimal(10,3),@ActualVisit decimal(10,3),@Ptax decimal(10,3) = 1.995;
select @Bvisits = BalanceVisit from PakacgeTb where PackageID = 25306;

set @ActualVisit = @Bvisits - @Ptax;

select @ActualVisit as VIP