【问题标题】:Mysql ROUND functionMysql ROUND 函数
【发布时间】:2015-11-25 21:13:31
【问题描述】:
我正在使用 Mysql ROUND 函数将小数四舍五入到小数点后一位,但我有一个问题...我需要始终保留一位小数,例如,
1280,319 => 1280,3
但是当我有
1283,971 => 1284
我需要有 1284,0
我尝试使用FORMAT(ROUND(1283,971, 1), 1),但它将逗号作为千位分隔符,在示例中它给出了1,284.0
感谢您的帮助。
【问题讨论】:
标签:
mysql
rounding
number-formatting
【解决方案1】:
如何为FORMAT 指定语言环境。
select FORMAT(ROUND(1283.971, 1), 1, 'De_de')
# 1.284,0
【解决方案2】:
SqlFiddleDemo
CREATE TABLE Table1
(`test` decimal(12,4));
INSERT INTO Table1
(`test`)
VALUES
(1280.319),
(1283.971),
(1275.521),
(1256.456);
SELECT truncate(test, 1)
FROM Table1
输出
| truncate(test, 1) |
|-------------------|
| 1280.3 |
| 1283.9 |
| 1275.5 |
| 1256.4 |
【解决方案3】:
这个格式的数字一定不能写1283,971,这里用逗号隔开参数。
试试这个代码:Select ROUND(1283.971, 1)