Pergunta

int i=99;
string s=i.ToString("D4");
//s=="0099"

Aconselhe -se sobre a implementação eficiente dos zeros anteriores de números em formato textual.

Foi útil?

Solução

Normalmente eu gosto:

RIGHT('0000' + [col], 4)

Outras dicas

Você pode usar a função definida abaixo

Selecione DBO.fspadleft (@i, '0', 4)

ou instrução embutida Selecione replicar (x, 4-len (x))+x de y

Create Function [dbo].[fsPadLeft](@var varchar(200),@padChar char(1)='0',@len int)
returns varchar(300)
as
Begin

return replicate(@PadChar,@len-Len(@var))+@var

end
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top