MySQL中的千位分隔符

4

我在MySQL数据库中有一列(如薪资)。数据类型是DECIMAL(8,2)。我发现它没有千位分隔符

我应该如何选择整个列并在每条记录中添加千位分隔符?


1
数据是如何插入的?如果使用PHP,您可以使用php number_format()。 - Andreas Nilsson
3个回答

5
你可以通过使用格式化函数来实现,具体方法如下:
SELECT FORMAT(col_name, 2) FROM table;

您还可以指定区域设置(例如意大利语):
SELECT FORMAT(col_name, 2, 'it_IT') FROM table;

谢谢!我已经能够查看带有千位分隔符的记录,但是如何在记录的值中永久地添加千位分隔符呢? - ix3

0

尝试使用以下方式选择数据:

SELECT FORMAT(col, num_of_decimals)

我的答案和你的有什么不同? - aleroot
我不这么认为,我比您提前3分钟回答了... 您在问题之前发表了评论,但解决方案有所不同。 - aleroot
是的,然后我想起了FORMAT()并开始回答问题,不确定实际的格式,所以我在谷歌上搜索了一下。写完之后就发布了。 - Andreas Nilsson

0

不要这样做。您应该将数字存储为没有千位分隔符格式,并将此类型的数字格式保存用于输出查询。这就像尝试使用字体格式存储数字一样。这是错误的尝试和错误的存储位置。

原因是您希望数据库以设计操作的方式存储数据,例如进行计算、比较等。否则,您基本上将数字存储为字符串,这违背了将它们存储为数字的目的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接