Formato especial de salida en consulta

27/09/2006 - 23:38 por Oswaldo | Informe spam
¡Que tal Foro?
Como puedo hacer para que en la consulta de salida (De SQL Server) de un
campo de tipo entero, me ponga siempre 5 digitos (por decir un número)
completandolo con ceros al principio? por ejemplo si tengo 10 que me regrese
en mi Select un '00010'

De antemano muchas gracias!
 

Leer las respuestas

#1 Carlos Enrique Morales
29/09/2006 - 02:09 | Informe spam
Una solución muy práctica podría ser:

1. creamos una función que devuelva una cadena:

create function fn_formatear_dato (@campo varchar(20),
@posiciones tinyint,
@relleno char(1))

returns varchar(20)

as

begin

declare @valor varchar(20)

set @relleno = isnull(@relleno, ' ')

set @valor = replicate( @relleno,
@posiciones -
len(ltrim(rtrim(isnull(@campo,''))))) +
ltrim(rtrim(isnull(@campo,'')))

return @valor

end


2. ejecutamos la función:

a. valores numericos:

select dbo.fn_formatear_dato(3,5,'0')

b. valores cadena:

select dbo.fn_formatear_dato('carlos',10, ' ')



"Oswaldo" escribió en el mensaje
news:
¡Que tal Foro?
Como puedo hacer para que en la consulta de salida (De SQL Server) de un
campo de tipo entero, me ponga siempre 5 digitos (por decir un número)
completandolo con ceros al principio? por ejemplo si tengo 10 que me
regrese
en mi Select un '00010'

De antemano muchas gracias!

Preguntas similares