创建1000个函数WITH / Leading 0's

时间:2013-09-10 15:15:24

标签: sql function scalar leading-zero

早安DBA, 我需要一个函数来拉取一个int DocumentID列并返回最低的千位int。限制是我们的结果必须有8个字符,前导字符必须为0。

  • 示例1 :1234(DocumentID列中包含的int)结果:00001000 (由结果集中的函数生成)

  • 示例2 :1152534结果:01152000

结果集......

DocumentID Function 

1234       00001000 
1152534    01152000

2 个答案:

答案 0 :(得分:0)

这是基本结构。确切的命令可能因RDBMS而异。

right('00000000'||cast(DocumentID as varchar(8)),8)

答案 1 :(得分:0)

这适用于SQL Server(基于@Declan_K的回答)

SELECT RIGHT('0000' + CONVERT(VARCHAR(5), DocumentID  /1000) , 5)+ '000'