MySQL 如何使用.作为千分位分隔符,以及使用,作为小数分隔符进行数字格式化
您可以使用format()函数来进行分隔符的操作。 它将在MySQL版本大于或等于5.5的情况下工作。 我们正在使用版本8.0.12。
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.12 |
+-----------+
1 row in set (0.00 sec)
语法如下
SELECT FORMAT(yourColumnName, valueAfterDecimalPoint, 'de_DE') AS anyAliasNamefrom yourTableName;
为了理解上述语法,让我们创建一个表。 创建表的查询语句如下
mysql> create table formatNumberDemo
-> (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> Number DECIMAL(19,1)
-> );
Query OK, 0 rows affected (1.13 sec)
使用insert命令在表中插入一些记录。
查询语句如下
mysql> insert into formatNumberDemo(Number) values(10000000000000.2);
Query OK, 1 row affected (0.15 sec)
mysql> insert into formatNumberDemo(Number) values(1000.4);
Query OK, 1 row affected (0.21 sec)
mysql> insert into formatNumberDemo(Number) values(1000000.6);
Query OK, 1 row affected (0.11 sec)
mysql> insert into formatNumberDemo(Number) values(100000000.7);
Query OK, 1 row affected (0.17 sec)
mysql> insert into formatNumberDemo(Number) values(100000000000000000.8);
Query OK, 1 row affected (0.15 sec)
使用select语句从表中显示所有记录。
查询语句如下
mysql> select *from formatNumberDemo;
以下是输出结果
+----+----------------------+
| Id | Number |
+----+----------------------+
| 1 | 10000000000000.2 |
| 2 | 1000.4 |
| 3 | 1000000.6 |
| 4 | 100000000.7 |
| 5 | 100000000000000000.8 |
+----+----------------------+
5 rows in set (0.00 sec)
下面是使用“.”作为千位分隔符,“,”作为小数分隔符的格式化数字的查询语句
mysql> SELECT FORMAT(Number, 3, 'de_DE') AS Numberformat from formatNumberDemo;
以下是输出结果
+-----------------------------+
| Numberformat |
+-----------------------------+
| 10.000.000.000.000,200 |
| 1.000,400 |
| 1.000.000,600 |
| 100.000.000,700 |
| 100.000.000.000.000.000,800 |
+-----------------------------+
5 rows in set (0.00 sec)
阅读更多:MySQL 教程
极客教程