MySQL中计算默认是四舍五入的。要是直接舍掉小数位需要用到FLOOR()函数。

  1. ceil() / ceiling() 向上取整
    ex: ceil(1.2) = 2
  2. floor() 向下取整
    ex: floor(1.2) = 1
  3. round() 四舍五入

给出一个我写的例子:

update guess_detail set
 award_bean = (case when FLOOR(((BEAN_COUNT / 400) * 675)) > 5000 then 5000 else FLOOR(((BEAN_COUNT / 400) * 675)) end)
 where DATE_TIME = '2021-02-05' and guess_type = 'up'

case when 可以理解为sql中的三元表达式,如果计算的值大于5000,就赋值5000。否则等于计算的值。

感谢各位观看,如果有不对的地方还请各位大佬们指教。