SQL Float值不= 0

时间:2013-06-24 10:03:41

标签: php sql

我遇到了一些SQL值和问题的问题。 PHP。 我正在做2个请求,一个是在我的sql中添加一个值而另一个是减去这个结果。

这是:

$totaux = $montant_actuel + ($nbre_dej * $prix_dejeuner) + ($nbre_din * $prix_diner) + ($nbre_soir_etape * $prix_etape);

当我这样做时,它等于:

sum = 0 + (15.8*1) + (15.8*1) + (57.8*0)

所以我有:31.6

但是当我想要做的时候:

$totaux = $montant_actuel - ($nbre_dej * $prix_dejeuner) - ($nbre_din * $prix_diner) - ($nbre_soir_etape * $prix_etape);

sum = 31.6 - (15.8*1) - (15.8*1) - (57.8*0)

然后,当我将它插入我的数据库时,我有这条记录:0.0000000000000142109而不是0

我不明白为什么会这样。

2 个答案:

答案 0 :(得分:1)

它似乎是数据库中的一个简单的舍入错误。如果您使用floatdouble将其更改为decimal,以避免舍入错误。

答案 1 :(得分:0)

这可能是数字精确度的问题......使用以下函数:here