T-SQL中的字符串格式

时间:2010-02-19 12:46:10

标签: sql tsql

我已经在一个表中添加了一个列,该表将存储基于连接其他列的格式化字符串,以便我可以更轻松地搜索它。 为了保存将整个表加载到另一个应用程序并更新新列然后持久化,我想编写一个UPDATE SQL查询。但我无法弄清楚如何采用整数列并将其格式化,如本例所示

源列值= 1 目标列值= 0001

我希望在SQL中添加3个前导零。

有什么想法吗?

4 个答案:

答案 0 :(得分:5)

以下是如何预装seroes:

right('0000' + cast(MyColumn, nvarchar(4), 4)

这会将0000MyColumn中的任何值连接起来,并返回最右边的四个字符。

答案 1 :(得分:3)

试试这个:

SELECT RIGHT('000'+ CONVERT(VARCHAR,Source),4) AS ColWithZeros
FROM Table

答案 2 :(得分:2)

select Right( '0000' + cast( 1 as varchar),4)

答案 3 :(得分:0)

如果它来自整数列,我会删除对字符串“0001”的依赖。

此外,大多数其他答案假设1是唯一的数据,我建议您需要找到数字位数,然后添加适当数量的零。因为它将失败任何其他数据(10,20,100等)。