选择查询长度问题

时间:2012-10-01 08:30:13

标签: sql-server-2008

  

可能重复:
  Most efficient T-SQL way to pad a varchar on the left to a certain length?

我有customer表,其中customerID的长度为10 但很少有客户长度为3或5

ex: 
3445
34
789
7800

但是输出应该如下所示,如果长度小于10

,我需要在此前加零
0000003445
0000000034
0000000789
0000007800

获取此数据的脚本是:

  

从客户

中选择customerID

对此有任何帮助都很棒,谢谢。

3 个答案:

答案 0 :(得分:2)

请尝试以下代码:

由于您使用的是sql server 2008,因此可以使用复制功能将零添加到值中。

Select ltrim(right(replicate(0,10) + <column>,10)) 
from your_table

答案 1 :(得分:1)

你可以这样使用......

SELECT RIGHT('0000000000' + RTRIM('3445'), 10)

在你的情况下,

SELECT RIGHT('0000000000' + RTRIM(customerID), 10) AS New_CustomerID
FROM Customer

答案 2 :(得分:0)

试试这个

SELECT RIGHT('0000000000'+`customerID`, 10) FROM `customer`