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

Como dividir string en columnas?

Estas en el tema de Como dividir string en columnas? en el foro de SQL Server en Foros del Web. Hola! Les comento: Tengo la siguiente tabla id descrp ----------- ------------------------ 1 FB-1-2792 2 FB-1-2232 3 FB-1-1642 4 FB-1-3423 5 FB-1-3425 Quisiera que la columna ...
  #1 (permalink)  
Antiguo 19/09/2011, 13:15
Avatar de Frehley  
Fecha de Ingreso: junio-2005
Ubicación: Somewhere between Heaven and Hell
Mensajes: 415
Antigüedad: 19 años, 5 meses
Puntos: 0
Pregunta Como dividir string en columnas?

Hola! Les comento:

Tengo la siguiente tabla

id descrp
----------- ------------------------
1 FB-1-2792
2 FB-1-2232
3 FB-1-1642
4 FB-1-3423
5 FB-1-3425


Quisiera que la columna descrp se insertara en una tabla temporal pero dividida en columnas para que quede asi:

id part1 part2 part3
----------- --------------------- ---------------------
1 FB 1 2792
2 FB 1 2232
3 FB 1 1642
4 FB 1 3423
5 FB 1 3425


Alguien me podria dar una ayuda de como hacerlo?

Muchas gracias!
__________________
diegoz.com.ar

Última edición por Frehley; 19/09/2011 a las 13:49
  #2 (permalink)  
Antiguo 19/09/2011, 14:00
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 10 meses
Puntos: 447
Respuesta: Como dividir string en columnas?

Hola Frehley:

Puedes hacerlo utilizando las funciones SUBSTRING y CHARINDEX (si no sabes la sintaxis verificar la ayuda en línea), sólo tendrías que encontrar los parámetros adecuados para cada selección. Te pongo un ejemplo de cómo sería más o menos, te tocaría complementarlo para tus datos:

Código SQL:
Ver original
  1. DECLARE @tabla TABLE (campo VARCHAR(15))
  2. INSERT INTO @tabla VALUES ('1-987')
  3. INSERT INTO @tabla VALUES ('1-123')
  4. INSERT INTO @tabla VALUES ('12345-98765')
  5.  
  6. SELECT * FROM @tabla
  7. /*
  8. campo
  9. ---------------
  10. 1-987
  11. 1-123
  12. 12345-98765
  13. */
  14.  
  15. SELECT
  16. SUBSTRING(campo, 1, charindex('-', campo)-1) campo1,
  17. SUBSTRING(campo, charindex('-', campo)+1, len(campo)) campo2
  18. FROM @tabla
  19.  
  20. /*
  21. campo1          campo2
  22. --------------- ---------------
  23. 1               987
  24. 1               123
  25. 12345           98765
  26. */

Saludos
Leo.

Etiquetas: dividir, string, 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 22:25.