mo唏
2017-06-09 02:34
采纳率: 100%
浏览 2.3k

mysql round函数的奇怪问题

谁能告诉我这是为什么,懵逼了
相同的数据,为啥通过sql字段获取后,结果不一样了
图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • mo唏 2017-06-09 03:20
    已采纳

    mysql官方文档中对round函数的说明
    1、对于精确值,来说,round,就是四舍五入原则
    2、对于近似值,来说,round,就是不管小数点后面是啥,round的结果是取最接近的 偶数

    图片说明
    https://dev.mysql.com/doc/refman/5.7/en/mathematical-functions.ht
    ml
    mysql关于数字的定义
    https://dev.mysql.com/doc/refman/5.7/en/precision-math-numbers.html
    int和decimal是精确的数字类型
    float和double是近似值

    在本问题中出现的这两个字段,被声明称了float,所以round的结果才会是2
    将字段类型改成decimal后,成功得到结果 3.

    已采纳该答案
    打赏 评论

相关推荐 更多相似问题