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

separar cadena de texto en varios campos

Publicado por Isaias (3181 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

separar cadena de texto en varios campos

Publicado por Isaias (3181 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