我有一个现有的表,其中包含列中的数字数据(例如column1
)。
数据由5到9个字符组成:
ex. 12345
1234567
123456789
我需要在最后3个字符前插入一个逗号:
ex. 12,345
1234,567
123456,789
这将在SQL Server上。
答案 0 :(得分:0)
这应该这样做:
DECLARE @SomeNumber BIGINT
SET @SomeNumber = 1234567891234
SELECT REPLACE(CONVERT(VARCHAR,CONVERT(MONEY,@SomeNumber),1), '.00','')
首先我们将数据转换为数据类型MONEY,这样我们就可以获得成千上万的逗号:
CONVERT(MONEY,@SomeNumber)
然后我们将MONEY数据类型转换为VARCHAR数据类型:
CONVERT(VARCHAR,CONVERT(MONEY,@SomeNumber),1)
然后我们使用REPLACE函数从字符串中删除“.00”并将其替换为空字符串'':
REPLACE(CONVERT(VARCHAR,CONVERT(MONEY,@SomeNumber),1), '.00','')