Zdravím všechny, myslel jsem, že přecením zásoby v souvislosti se změnou DPH přímo v mysql
UPDATE `karta` SET `prodejnicenabezdph`=Round(`prodejnicenabezdph`*((100+(SELECT `sazbadph` FROM `sazbadph` WHERE `iddph`=`dphvystup`))/100),0)/1.12 WHERE `dphvystup`=1 or `dphvystup`=3
Problém je, že do databáze se např. pokud je cena s DPH12% 91Kč uloží místo 81.25 částka 81.24999999999. Pokud změním ručně na 81.25, pak mi dotaz SELECT `prodejnicenabezdph`*1.12
vrátí 91.00000000000001 ale SELECT 81.25*1.12
vrátí 91.
Taky dotaz např. SELECT `prodejnicenabezdph`, `prodejnicenabezdph`*1.12+0 FROM `karta` WHERE 1;
vrací 81.25 a 91.00000000000001.
Zaokrouhlování nemám moc řešeno, ale hlavně netuším důvod, proč tomu tak je.
Hodnota je double, ale pokud změním na FLOAT, tak výsledek je stejný.
Děkuji za každou nápomoc.