SQL Server - separar cadena de texto en varios campos

 
Vista:

separar cadena de texto en varios campos

Publicado por javier (8 intervenciones) el 18/06/2014 10:35:10
Buenos días,
Estoy realizando una consulta en SQL y tengo un campo texto con varios separadores y no sé como extraer cada campo por separado, pongo un ejemplo concreto.

EFE*600.20*500.0X1;100.0X1;0.2*1

y tendría que separarlo como
500.0 -> 1
100.0 -> 1
0.2 ->1
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
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

separar cadena de texto en varios campos

Publicado por Isaias (4558 intervenciones) el 18/06/2014 18:00:42
¿Tus separadores son * y X?
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

separar cadena de texto en varios campos

Publicado por javier (8 intervenciones) el 18/06/2014 18:33:19
Solo *
Lo tropas es el símbolo de multiplicar
Gracias 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
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

separar cadena de texto en varios campos

Publicado por Isaias (4558 intervenciones) el 18/06/2014 20:07:24
Crea una FUNCION de USUARIO (UDF), que tome tu cadena y la vaya "cortando" con un SUBSTRING

http://msdn.microsoft.com/es-MX/library/ms187748.aspx
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

separar cadena de texto en varios campos

Publicado por javier (8 intervenciones) el 30/06/2014 13:20:27
Buenos días, realmente lo que tengo es

50.0x1;20.0x8;10.0x15;5.0x5

donde el delimitador es ; con la funcion split consigo dividir en filas la cadena, pero lo que me gustaría tener es lo siguiente

columna a columna b
50.0 1
20.0 8
10.0 15
5.0 5



Ademas tengo un problema que es si tengo varias cadenas en lo que hay que hacer lo mismo, entiendo que habría que añadir otro campo con un identificador

columna a columna b columna c
50.0 1 id1
20.0 8 id1
10.0 15 id1
5.0 5 id1
50.0 2 id2
20.0 3 id2
10.0 9 id2
5.0 3 id2

y no tengo ni idea de como hacerlo. 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