如何在sql中连接两个字符串并用0填充一个字符串?

时间:2008-12-17 18:01:01

标签: sql-server tsql

我在表格中有两个字段。一个包含诸如BTA,BEA,REA之类的值。另一个包含1,2,63,103等值。

我希望将两个字段组合起来,使它们看起来像BTA001,BTA002,BTA063,BTA103。

注意如果数字的长度不是3个字符,我想在数字的左边填充0,使其等于3。

我该怎么做呢?表中的字段称为Type,对应于BTA,BEA和REA,Id是对应于1,2,63和103的字段。

3 个答案:

答案 0 :(得分:9)

select Type + right('00' + cast(id as varchar(10)), 3)
from ...

编辑:如果id可以为null,并且您希望显示零,则可以执行以下操作:

select Type + right('00' + cast(isnull(id, 0) as varchar(10)), 3) 
from ...

答案 1 :(得分:1)

选择   C1 +右(('000'+ cast(C2 as nvarchar(10)),3)as

来自t1

答案 2 :(得分:1)

选择FIELD1 + RIGHT('000'+ CONVERT(VARCHAR,FIELD2),3)