SQL Server - Rellenar de ceros

 
Vista:

Rellenar de ceros

Publicado por Oscar (45 intervenciones) el 25/04/2005 22:24:21
Tengo un campo numérico de 16 posiciones (13 enteros+punto decimal+2 decimales), pero necesito rellenar de ceros la parte izquierda de este campo. Es decir, si tengo el siguiente valor: 200000.00 debo actualizarlo con el siguiente contenido 0000000200000.00 de tal forma que me quede la longitud especificada (16 posiciones).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Rellenar de ceros

Publicado por Cecilia Colalongo (165 intervenciones) el 26/04/2005 12:36:50
Fijate con:

SELECT REPLICATE('0',15-LEN(LTRIM(CAST(Importe AS VARCHAR(15)))))+LTRIM(CAST(Importe AS VARCHAR(15)))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por oscar (45 intervenciones) el 26/04/2005 16:04:29
Muchas gracias Cecilia, me funcionó perfecto!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por Dani (1 intervención) el 14/06/2007 11:14:02
Buenas... la ayuda me ha serviso bastante , pero aun no consigo compilar el procedimiento, porque me da un error, creo que me falta alguna sentencia, mi código es este:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER PROCEDURE [dbo].[prueba1]
AS
BEGIN
UPDATE dbo.ExMycurriform SET
SELECT REPLICATE FROM ('0',6-LEN(LTRIM(CAST(ID_CUR AS INTEGER))))+ LTRIM(CAST(ID_CUR AS INTEGER))
END

Seria de gran ayuda poder solucionar esto.

Muchas gracias y un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por Balmiro (1 intervención) el 22/08/2008 19:37:50
RIGHT('0000000000' + convert(varchar,numero),10 )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por penrril082 (1 intervención) el 30/09/2009 18:01:27
lo encontre en esta pagina:

http://www.archivum.info/microsoft.public.fr.access/2006-02/01461/Re:_LPAD_en_access

esta perfecta y puedes rellenar cualquier formato.

Function fnCadrage(UneChaine As String, _
NbCar As Byte, _
Optional TypeCar As String = "*") As String
fnCadrage = Replace(Format(UneChaine, String(NbCar, "@")), _
Chr(32), TypeCar)
End Function

EJEMPLOOOO:
? fncadrage("toto",10) retournera : ******toto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por Shanito (1 intervención) el 26/10/2010 02:07:30
la unica manara de resolver tu problema es con una funcion que te autocomplete el numero que le envias.

espero que te sirva esta funcion para sqlserver

creatte function [dbo].[formatoNumeroRecibo] (@valor nvarchar(30))
returns nvarchar(30)
as
begin
declare
@i int,
@tmp1 nvarchar(50),
@resul nvarchar(50)
set @i=Convert(int,@valor);
set @tmp1 = right( '0000000000000' + cast( @i AS nvarchar),6 );
set @resul=Convert(nvarchar(50),(year(getdate())))+'-'+ @tmp1;
return @resul;
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por fabian (1 intervención) el 01/08/2012 21:05:46
mmmmm que opinan de esto??? :)

select replace((cast(( 2 *.01) as char(4))),'.','')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Rellenar de ceros

Publicado por Hugo Lozano (1 intervención) el 10/03/2014 20:06:46
Excelente solucion gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar