Quand je fais une requête SELECT 1*7.6
, Il me gaves 7.6
MySQL Multiplication des colonnes flottantes: 1 * 7.6 donne 7.599999904632568?
Mais quand je fais la multiplication de colonne (* products.commision de sold.amount):
SELECT *,
(products.commision*sold.amount) as fee
FROM sold
RIGHT JOIN products
ON sold.idprod=products.ID
AND DATE(sold.date) BETWEEN DATE('2015-10-01') AND DATE('2015-10-31')
WHERE sold.userid="1"
ORDER BY sold.userid
Il me gaves
ID | userid | date | idprod | amount | Category | Name | commision | fee
60 | 1 | 15-10-01 | 21 | 1 | Volish | Black | 7.6(float) | 7.599999904632568
Pourquoi?
Vous utilisez des colonnes flottantes. Decimal (19,6) est probablement ce que vous cherchez .... – Edward
Probablement parce que 'products.commission' n'est pas exactement' 1' ou 'vendu.amount' n'est pas exactement' 7.6', mais soit la valeur sur son propre est assez proche pour être affiché en tant que tel. Les nombres à virgule flottante sont difficiles. –
@Edward Je ne comprends pas? –