Rellenar campo char con espacios en blanco

24/08/2005 - 20:55 por Carlos dv | Informe spam
¿Es posible en sql server 2005 añadir a una columna una formula que
justifique el dato a la derecha rellenandolo con espacios en blanco?

Gracias.

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
24/08/2005 - 22:00 | Informe spam
Carlos,

Yo no se en la version 2005, pero en la 2000 las columnas tipo char son
rellenadas con espacios a la derecha de forma automatica.

ejemplo:

select cast('sql' as char(15)) + 'server'
go


AMB

"Carlos dv" wrote:

¿Es posible en sql server 2005 añadir a una columna una formula que
justifique el dato a la derecha rellenandolo con espacios en blanco?

Gracias.
Respuesta Responder a este mensaje
#2 Carlos dv
25/08/2005 - 09:27 | Informe spam
No quiero rellenar el campo con espacios en blanco a la derecha, quiero que
los espacios en blanco queden a la izquierda.

Así quedan los datos normalmente en un char:
'1 '
'11 '
'2 '

Quiero que queden así:
' 1'
' 2'
' 11'

Gracias.
Respuesta Responder a este mensaje
#3 Salvador Ramos
25/08/2005 - 11:15 | Informe spam
Hola,

Te paso un fórmula para hacer lo que necesitas, si lo deseas la puedes
convertir fácilmente en una función. Sólo tienes que ajustar la longitud (30
en el ejemplo) al tamaño máximo del campo:
SELECT replicate(' ', 30 - Len(nombre)) + rtrim(nombre)
FROM TuTabla


Un saludo
Salvador Ramos
Murcia - España
[Microsoft MVP SQL Server]
www.helpdna.net (información sobre SQL server, Windows DNA y .NET)

"Carlos dv" escribió en el mensaje
news:
No quiero rellenar el campo con espacios en blanco a la derecha, quiero
que
los espacios en blanco queden a la izquierda.

Así quedan los datos normalmente en un char:
'1 '
'11 '
'2 '

Quiero que queden así:
' 1'
' 2'
' 11'

Gracias.
Respuesta Responder a este mensaje
#4 Alejandro Mesa
25/08/2005 - 14:46 | Informe spam
Carlos,

Puedes usar la formula indicada por Salvador o puedes usar la siguiente:

select
right(space(25) + c1, 25)
from
(
select cast('1' as varchar(25))
union all
select cast('11' as varchar(25))
union all
select cast('2' as varchar(25))
) as t1(c1)
go


AMB

"Carlos dv" wrote:

No quiero rellenar el campo con espacios en blanco a la derecha, quiero que
los espacios en blanco queden a la izquierda.

Así quedan los datos normalmente en un char:
'1 '
'11 '
'2 '

Quiero que queden así:
' 1'
' 2'
' 11'

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