将前缀为0的结果填充到固定宽度

时间:2016-06-12 08:53:52

标签: sql prefix

我有以下挑战。目标是创建6个字符的固定宽度字段。如果表字段只包含三个字符,则应该有三个前缀为0的字符。示例

来源是帐户限制

的表格

限制

  

201

     

4000

结果

  

限制

     

000201

     

004000

我有以下代码,但是这将是值的后缀,我需要在0的前面加上限制值。

选择   REPLACE(CAST(限制为NCHAR(6)),SPACE(1),'0')AS Accountlimit   来自DWH.limit

2 个答案:

答案 0 :(得分:1)

如果您正在使用SQL Server 2012,则可以使用FORMAT函数,如下所示:

SELECT FORMAT(201, '000000')

上述陈述的结果将是字符串" 000201"

答案 1 :(得分:0)

如何做以下

  1. 使用六个零前缀字符串(因此您将拥有足够的字符串)
  2. 获取该字符串的最后六个字母(修剪掉那些不需要的字母)
  3. select substr(concat('000000', limit)), -6, 6) ....