Skip to content

FORMAT()

函数说明

FORMAT 函数用于将数字格式设置为 "#,###,###.##" 格式,并四舍五入到小数点后一位。格式化数字后,它将以字符串的形式返回值。

语法

> FORMAT(X,D[,locale])

参数释义

参数 说明
X 必要参数。X 是要格式化的数字。如果 X 是 NULL,函数将返回 NULL。
D 必要参数。D 是要舍入小数位数
如果 D 是 0,则结果没有小数点或没有小数部分。
如果 D 为 NULL,函数返回 NULL。
[,locale] 可选参数。可选参数 [,locale] 指定要使用的语言环境,并且用于确定千个分隔符和分隔符之间的分组。如果 [locale] 设置为 NULL 或未指定,则默认语言环境为 'en_US'。

示例

mysql> SELECT FORMAT(12332.123456, 4);
+-------------------------+
| format(12332.123456, 4) |
+-------------------------+
| 12,332.1235             |
+-------------------------+
1 row in set (0.01 sec)

mysql> SELECT FORMAT(12332.1,4);
+--------------------+
| format(12332.1, 4) |
+--------------------+
| 12,332.1000        |
+--------------------+
1 row in set (0.00 sec)

mysql> SELECT FORMAT(12332.2,0);
+--------------------+
| format(12332.2, 0) |
+--------------------+
| 12,332             |
+--------------------+
1 row in set (0.00 sec)

mysql> SELECT FORMAT(12332.2,2,'de_DE');
+---------------------------+
| format(12332.2, 2, de_DE) |
+---------------------------+
| 12.332,20                 |
+---------------------------+
1 row in set (0.00 sec)

mysql> SELECT FORMAT(19999999.999999999,4);
+-------------------------------+
| format(19999999.999999999, 4) |
+-------------------------------+
| 20,000,000.0000               |
+-------------------------------+
1 row in set (0.01 sec)

mysql> SELECT FORMAT("-.12334.2","2", "en_US");
+-----------------------------+
| format(-.12334.2, 2, en_US) |
+-----------------------------+
| -0.12                       |
+-----------------------------+
1 row in set (0.00 sec)

mysql> SELECT FORMAT("-.12334.2","2", "de_CH");
+-----------------------------+
| format(-.12334.2, 2, de_CH) |
+-----------------------------+
| -0.12                       |
+-----------------------------+
1 row in set (0.01 sec)