如何在T-SQL中用逗号格式化数字?

我正在运行一些管理查询并sp_spaceused在SQL Server 2008中编译结果,以查看数据库中某些表的数据/索引空间比率。当然,结果中会出现各种各样的数字,我的眼睛开始蒙上一层阴影。如果我可以用逗号将所有这些数字格式化(987654321变为987,654,321),那将真的很方便。有趣的是,在我多年来一直使用SQL Server的过程中,这个问题从未出现过,因为大多数时候我都会在表示层进行格式化,但是在这种情况下,SSMS中的T-SQL结果就是表示。

我曾经考虑过创建一个简单的CLR UDF来解决这个问题,但是似乎这在纯旧的T-SQL中应该是可行的。因此,我将在这里提出一个问题-您如何在香草T-SQL中进行数字格式化?


人到中年有点甜
浏览 718回答 3
3回答

湖上湖

我同意所有人(包括OP)的意见,包括OP表示应该在表示层中进行格式化,但是可以在T-SQL中通过强制转换为money,然后转换为来完成这种格式化varchar。不过,这的确包含了尾随的小数,可以使用来进行循环SUBSTRING。SELECT CONVERT(varchar, CAST(987654321 AS money), 1)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server