Formateo de numero...!

06/01/2004 - 17:21 por AlejoR | Informe spam
Hola grupo
Como es que en SQL se formatea un numero a determinados digitos?? Añadiendo ceros a la izquierda
Es decir, si tengo 1234 y quiero expresarlo en 5 digitos quedaria 0123

Gracias people

Preguntas similare

Leer las respuestas

#1 Isaías
06/01/2004 - 17:55 | Informe spam
Utiliza REPLICATE

SELECT REPLICATE('0',5-(DATALENGTH(CONVERT(VARCHAR
(5) ,LTRIM(RTRIM(TuColumna))))))+ CONVERT(VARCHAR
(5),TuColumna)

El 5 es el ANCHO de la columna a convertir.
Respuesta Responder a este mensaje
#2 Maximiliano Damian Accotto
06/01/2004 - 18:06 | Informe spam
Si mi amigo Isaias me permite un comentario: ;-)

no se para que estas usando un formateo pero si es para presentar un dato a
un cliente esto yo lo haria en la aplicacion cliente y no en la Base de
datos.

Esto por una cuestion de tratar de mantener las capas en sus respectivos
lugares, en este caso la de presentacion y la de datos.

Ahora todo depende, hay veces que es util hacer esto.

Salu2 muy cordiales

Maximiliano Damian Accotto


"AlejoR" escribió en el mensaje
news:
Hola grupo.
Como es que en SQL se formatea un numero a determinados digitos??


Añadiendo ceros a la izquierda.
Es decir, si tengo 1234 y quiero expresarlo en 5 digitos quedaria 01234

Gracias people
Respuesta Responder a este mensaje
#3 Liliana Sorrentino
06/01/2004 - 18:15 | Informe spam
Hola,
Otra opción:

DECLARE @num dec(5) SET @num = 123
SELECT RIGHT( '00000' + CAST(@num AS VARCHAR ), 5)

Saludos... Liliana.

"Isaías" escribió en el mensaje
news:0ad601c3d475$edd70620$
Utiliza REPLICATE

SELECT REPLICATE('0',5-(DATALENGTH(CONVERT(VARCHAR
(5) ,LTRIM(RTRIM(TuColumna))))))+ CONVERT(VARCHAR
(5),TuColumna)

El 5 es el ANCHO de la columna a convertir.
Respuesta Responder a este mensaje
#4 Maximiliano Damian Accotto
06/01/2004 - 19:31 | Informe spam
;-) por eso hice la aclaracion nomas, solo aclaro para que no se haga uso
incorrecto de algunas cosas, pero lo que decis es correcto y yo hay veces
que tambien lo uso para los casos que vos mencionas o para otros que
necesito ese tipo de cosas.

Ahora si debo llenar un textbox por ej, el formato lo hago en el cliente y
no en la Bdd, creo que todo a su medida.

Salu2

Maximiliano Damian Accotto


"Adrian Garcia" escribió en el mensaje
news:
Hola
Maximiliano,

Muchas veces se requiere si o si hacer este tipo de cuestiones desde el


lado
del motor. Imaginate que estan generando un archivo de texto utilizando la
utilidad de BCP para exportar datos a otros sistemas, etc, etc. En ese


caso
es muchisimo mas eficiente hacer este tipo de cosas en el motor que armar
una aplicacion que lea fila a fila para generar el archivo de texto.
No todo es 3 capas... y esto te lo dice un fanatico de las 3 capas!. Pero


he
visto como procesos de indole batch eran metidos a presion dentro del
esquema de las 3 capas para luego obtener procesos con una performance
terrible.

Saludos
Adrian D. Garcia
NDSoft


"Maximiliano Damian Accotto" <maxi_accotto[arroba]speedy.com.ar.SACAME>
wrote in message news:
> Si mi amigo Isaias me permite un comentario: ;-)
>
> no se para que estas usando un formateo pero si es para presentar un


dato
a
> un cliente esto yo lo haria en la aplicacion cliente y no en la Base de
> datos.
>
> Esto por una cuestion de tratar de mantener las capas en sus respectivos
> lugares, en este caso la de presentacion y la de datos.
>
> Ahora todo depende, hay veces que es util hacer esto.
>
> Salu2 muy cordiales
>
> Maximiliano Damian Accotto
>
>
> "AlejoR" escribió en el mensaje
> news:
> > Hola grupo.
> > Como es que en SQL se formatea un numero a determinados digitos??
> Añadiendo ceros a la izquierda.
> > Es decir, si tengo 1234 y quiero expresarlo en 5 digitos quedaria


01234
> >
> > Gracias people
>
>


Respuesta Responder a este mensaje
#5 AlejoR
06/01/2004 - 21:36 | Informe spam
Si de acuerdo
En el cliente se haria el formateo, si no es que necesito preguntar por los dos primeros digitos de un numero de 5 digitos. Esta almacenado como numerico y codigos como 01NNN lo almacena como 1NNN.
Gracias mil a todos.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida