Edy*_*ood 8 mysql sql database floating-point
我正在一家小型网店工作,我正试图获得产品的最低价格(照片).
所以我查看最低的加价是多少(照片可以订购不同尺寸):
SELECT
MIN(price) as price
FROM
rm_prices
WHERE
photo_id = '47' AND
price != '0'
Run Code Online (Sandbox Code Playgroud)
这将返回为此产品找到的最低值.
当我检查我的数据库时,我发现最低值是1256.3.
当我打印我的结果时,给出的数字是1256.30004882813.
该值设置为FLOAT.
为什么结果是1256.30004882813而不是1256.3?
这是FLOAT列类型的副作用,您可以尝试将价格存储在DECIMAL数据类型中,有关它的更多信息,请参阅mysql手册:http://dev.mysql.com/doc/refman/5.1/en/定点-types.html