在SQL中格式化sortcode字段

时间:2018-04-16 08:21:57

标签: sql sql-server tsql format

在上一篇文章中,如何将数据nnnnnn格式化为nn-nn-nn的答案提供如下:

SELECT 
FORMAT(CODE,'##-##-##') 
FROM TABLE_NAME

然而我遇到的问题是前导0被省略,所以012345被格式化为1-23-45而不是01-23-45

无论如何我可以修改FORMAT命令,还是可以用另一个命令来支持这个命令?

2 个答案:

答案 0 :(得分:4)

您可以尝试这种格式。

SELECT FORMAT(CODE,'0#-##-##') 

sqlfiddle:http://sqlfiddle.com/#!18/f3b0f/2

答案 1 :(得分:0)

格式化后根据排序码的长度追加0

SELECT 
case when len(FORMAT(012345,'##-##-##') )<8 
then '0' +cast(FORMAT(012345,'##-##-##') as varchar(8)) end