Cómo separar datos delimitador pour un guión?

12/02/2007 - 16:07 por Don Juan | Informe spam
Hola
Tengo una columna qui tiene este formato:
-Nombres
Juan Ortiz - M
Ana Granda - F
Jose Caliz - M
Rita Armendariz - F
Necesito obtener este resultado
-Nombres -Sexo
Juan Ortiz M
Ana Granda F
Jose Caliz M
Rita Armendariz F

Separar Nombres de Sexo, siempre existe el guión que los separa.
Gracias por sus comentarios.

Preguntas similare

Leer las respuestas

#1 Maxi
12/02/2007 - 17:01 | Informe spam
Hola, un ejemplo simple:

declare @n varchar(100)
set @n = 'hola - mundo'


select substring(@n,1,patindex('%-%',@n)-1), substring(@n,patindex('%-%',@n)
+ 1,len(@n) - patindex('%-%',@n) + 1)


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Don Juan" escribió en el mensaje
news:%
Hola
Tengo una columna qui tiene este formato:
-Nombres
Juan Ortiz - M
Ana Granda - F
Jose Caliz - M
Rita Armendariz - F
Necesito obtener este resultado
-Nombres -Sexo
Juan Ortiz M
Ana Granda F
Jose Caliz M
Rita Armendariz F

Separar Nombres de Sexo, siempre existe el guión que los separa.
Gracias por sus comentarios.


Respuesta Responder a este mensaje
#2 jcac
12/02/2007 - 17:07 | Informe spam
Esto te puede servir:

select Nombres, substring(Nombres, 1, charindex('-', Nombres)-1) As Nombre,
substring(Nombres, charindex('-', Nombres)+1, len(Nombres)) As Sexo
From Tabla


"Don Juan" escribió en el mensaje
news:%
Hola
Tengo una columna qui tiene este formato:
-Nombres
Juan Ortiz - M
Ana Granda - F
Jose Caliz - M
Rita Armendariz - F
Necesito obtener este resultado
-Nombres -Sexo
Juan Ortiz M
Ana Granda F
Jose Caliz M
Rita Armendariz F

Separar Nombres de Sexo, siempre existe el guión que los separa.
Gracias por sus comentarios.


Respuesta Responder a este mensaje
#3 Alejandro Mesa
12/02/2007 - 17:22 | Informe spam
Don Juan,

Aqui va un par mas.

select
rtrim(parsename(replace(c1, '-', '.'), 2)) as Nombre,
ltrim(parsename(replace(c1, '-', '.'), 1)) as Sexo
from
(
select 'Juan Ortiz - M'
union all
select 'Ana Granda - F'
union all
select 'Jose Caliz - M'
union all
select 'Rita Armendariz - F'
) as t(c1)

select
rtrim(stuff(c1, patindex('%-%', c1), 50, '')) as Nombre,
ltrim(stuff(c1, 1, patindex('%-%', c1), '')) as Sexo
from
(
select 'Juan Ortiz - M'
union all
select 'Ana Granda - F'
union all
select 'Jose Caliz - M'
union all
select 'Rita Armendariz - F'
) as t(c1)


AMB


"Don Juan" wrote:

Hola
Tengo una columna qui tiene este formato:
-Nombres
Juan Ortiz - M
Ana Granda - F
Jose Caliz - M
Rita Armendariz - F
Necesito obtener este resultado
-Nombres -Sexo
Juan Ortiz M
Ana Granda F
Jose Caliz M
Rita Armendariz F

Separar Nombres de Sexo, siempre existe el guión que los separa.
Gracias por sus comentarios.



Respuesta Responder a este mensaje
#4 Don Juan
12/02/2007 - 18:13 | Informe spam
Muchas gracias a todos...
Son muy fuertes ;)

"Alejandro Mesa" escribió en el
mensaje news:
Don Juan,

Aqui va un par mas.

select
rtrim(parsename(replace(c1, '-', '.'), 2)) as Nombre,
ltrim(parsename(replace(c1, '-', '.'), 1)) as Sexo
from
(
select 'Juan Ortiz - M'
union all
select 'Ana Granda - F'
union all
select 'Jose Caliz - M'
union all
select 'Rita Armendariz - F'
) as t(c1)

select
rtrim(stuff(c1, patindex('%-%', c1), 50, '')) as Nombre,
ltrim(stuff(c1, 1, patindex('%-%', c1), '')) as Sexo
from
(
select 'Juan Ortiz - M'
union all
select 'Ana Granda - F'
union all
select 'Jose Caliz - M'
union all
select 'Rita Armendariz - F'
) as t(c1)


AMB


"Don Juan" wrote:

Hola
Tengo una columna qui tiene este formato:
-Nombres
Juan Ortiz - M
Ana Granda - F
Jose Caliz - M
Rita Armendariz - F
Necesito obtener este resultado
-Nombres -Sexo
Juan Ortiz M
Ana Granda F
Jose Caliz M
Rita Armendariz F

Separar Nombres de Sexo, siempre existe el guión que los separa.
Gracias por sus comentarios.



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