round(45.923,-1)给出50的结果。这是为什么?它是如何计算的?
round(45.923,-1)
(对不起,我被这个问题的较早版本误认为值是46)
SQL ROUND()函数将数字四舍五入到精度…
例如:
round(45.65,1)给出结果= 45.7
round(45.65,-1)给出结果= 50
因为这种情况下的精度是从小数点开始计算的。如果为正数,则将考虑右侧数字,如果> = 5,则将其向上舍入;如果<= 4,则四舍五入为向下…,同样,如果其为负数,则将为小数点的左侧计算精度点…如果大于等于5
例如round(44.65,-1)给出40,而round(45.65,-1)给出50 …