Problemas con una consulta

06/02/2007 - 21:56 por Ricardo | Informe spam
Necesito convertir un numero decimal a 14 digitos de espacio, que no tenga el
punto de los decimales y que se complete con 0 a la derecha hasta llegar a
las 14 digitos.

Por ejemplo si tengo:

810.50 debe queda 00000000081050
9.45 debe queda 00000000000945

Alguien sabe como puedo hacer porque todas las funciones juntas no me dan el
resultado que quiero.

Gracias, Ricardo

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
06/02/2007 - 22:08 | Informe spam
Trata:

select
c1,
right(replicate('0', 15) + replace(ltrim(c1), '.', ''), 15) as c2
from
(
select 810.50 as c1
union all
select 9.45
) as t
go

Cambia el '.' por ',' si el lenguaje de tu conexion / server usa la coma
como separador de decimales.


AMB

"Ricardo" wrote:

Necesito convertir un numero decimal a 14 digitos de espacio, que no tenga el
punto de los decimales y que se complete con 0 a la derecha hasta llegar a
las 14 digitos.

Por ejemplo si tengo:

810.50 debe queda 00000000081050
9.45 debe queda 00000000000945

Alguien sabe como puedo hacer porque todas las funciones juntas no me dan el
resultado que quiero.

Gracias, Ricardo
Respuesta Responder a este mensaje
#2 jcac
06/02/2007 - 22:09 | Informe spam
Espero esto te ayude:

declare @var1 decimal(14,2)
set @var1 = 810.50
select @var1, right(replicate('0', 14) + convert(varchar(20),
convert(bigint, @var1*100)), 14)

Saludos

"Ricardo" escribió en el mensaje
news:
Necesito convertir un numero decimal a 14 digitos de espacio, que no tenga
el
punto de los decimales y que se complete con 0 a la derecha hasta llegar a
las 14 digitos.

Por ejemplo si tengo:

810.50 debe queda 00000000081050
9.45 debe queda 00000000000945

Alguien sabe como puedo hacer porque todas las funciones juntas no me dan
el
resultado que quiero.

Gracias, Ricardo
Respuesta Responder a este mensaje
#3 Enrique
10/02/2007 - 08:05 | Informe spam
select Rigth(replicate('0',15)+trim(Convert(MiCampo*100)),15)

No recuerdo como usar el convert, pero creo que te puede servir.


"jcac" escribió en el mensaje
news:
Espero esto te ayude:

declare @var1 decimal(14,2)
set @var1 = 810.50
select @var1, right(replicate('0', 14) + convert(varchar(20),
convert(bigint, @var1*100)), 14)

Saludos

"Ricardo" escribió en el mensaje
news:
Necesito convertir un numero decimal a 14 digitos de espacio, que no
tenga el
punto de los decimales y que se complete con 0 a la derecha hasta llegar
a
las 14 digitos.

Por ejemplo si tengo:

810.50 debe queda 00000000081050
9.45 debe queda 00000000000945

Alguien sabe como puedo hacer porque todas las funciones juntas no me dan
el
resultado que quiero.

Gracias, Ricardo




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida