Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

[SOLUCIONADO] añadir ceros delante de un id

Estas en el tema de añadir ceros delante de un id en el foro de SQL Server en Foros del Web. hola, Tengo una consulta de base de datos que se ejecuta dentro de un procedure, esta consulta saca todos los id del contenido de una ...
  #1 (permalink)  
Antiguo 03/11/2014, 10:01
 
Fecha de Ingreso: abril-2012
Mensajes: 449
Antigüedad: 12 años
Puntos: 7
añadir ceros delante de un id

hola,

Tengo una consulta de base de datos que se ejecuta dentro de un procedure, esta consulta saca todos los id del contenido de una tabla. Necesito que estos id-s se muestren con ceros delante y en total tenga el id 6 números.

Ejemplo:
id=3 --> 000003
id=25 --> 000025
id=380 --> 000380
id=4752 --> 004752
id=12458 --> 012458
id=758954 -->758954

¿como puedo hacerlo?
la verdad es que le estoy dando vueltas y a las horas que son no se me ocurre nada.
__________________
Gracias por todo;

Un saludo
  #2 (permalink)  
Antiguo 03/11/2014, 10:04
 
Fecha de Ingreso: abril-2012
Mensajes: 449
Antigüedad: 12 años
Puntos: 7
Respuesta: añadir ceros delante de un id

antes lo pregunto y antes se me ocurre.

añadiendo esto sale perfectamente:

Código SQL:
Ver original
  1. RIGHT(replicate('0', 6) + rtrim(id), 6) AS id

Gracias por todo

__________________
Gracias por todo;

Un saludo
  #3 (permalink)  
Antiguo 03/11/2014, 10:15
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: añadir ceros delante de un id

Si no supieras la longitud de tu campo, pero si a cuantos cero quieres rellenar:

Código SQL:
Ver original
  1. DECLARE @myint INT
  2. SET @myint = 234
  3. SELECT replicate ('0',(10 - len(@myint))) + CONVERT(VARCHAR, @myint)

En este caso e a 10 caracteres
__________________
MCTS Isaias Islas

Etiquetas: tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:24.