我们有一个运行opencart 1.5.6.4的在线商店,并希望找到一种将价格四舍五入到最接近的.99的方法。我们刚刚开启了“以增值税显示价格”,我们所有的价格现在都上涨了23%。我希望我的定价看起来好一点
例如:
当前价格:€608.85 新价格:€608.99
如果有一种方法可以编辑表“product”并将所有“price”值递增到以.99结尾,那真的很有帮助: - )
由于
答案 0 :(得分:1)
您可以使用ceil
进行舍入,然后减去一分:
select ceil(2.20) - 0.01
在更新中,您可以执行以下操作:
update product
set
price = ceil(price) - 0.01
您也可以选择ceil
,而不是round
,以舍入到最接近的整数或floor
以始终向下舍入。但要注意:例如,0.20的产品将变为-0.01。
如果您只想在大桶中显示精确的圆形价格,但是将它们存储在大桶中,那么您必须为此进行计算。 (弯曲的缩进能够挤压评论)
update product
set
price =
round(
-- Calculate the price incl VAT. Round it, and subtract a cent
ceil(price * 1.23) - 0.01
-- Round to whole cents.
, 2 )
-- Divide to calculate the price excluding VAT that belongs to the rounded price.
/ 1.23