如何将数字舍入到最接近的10?

mer*_*lot 3 mysql rounding

在MySQL中,我想将数字舍入到最接近的十位.

例如812 - > 810,但也是819 - > 810

使用ROUND函数不起作用.

jus*_*tMe 7

你可以使用TRUNCATE函数如下:

SELECT TRUNCATE(819, -1);
SELECT TRUNCATE(812, -1);

Result:
810
Run Code Online (Sandbox Code Playgroud)

  • 嗨@JGS你只需将-1改为-4 SELECT TRUNCATE(15332,-4); (2认同)

zou*_*a13 6

我会除以 10,做一个 floor() 然后乘以 10 以获得正确的 int 值。所以在 MySQL 中是这样的:

SELECT FLOOR(Myattribute / 10) * 10;
Run Code Online (Sandbox Code Playgroud)


小智 5

您仍然可以使用 round 函数,但将小数位指定为负数:

SELECT ROUND(812, -1)
Run Code Online (Sandbox Code Playgroud)