0

我对一些 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

我不明白为什么会这样。

4

2 回答 2

1

这似乎是数据库内部的一个简单的舍入错误。如果您正在使用floatdouble更改它decimal以避免舍入错误。

于 2013-06-24T10:10:14.563 回答
0

这可能是数字精度的问题......使用以下功能:这里

于 2013-06-24T10:11:56.520 回答