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

SQL para Separar cadena en varias subcadenas

Estas en el tema de SQL para Separar cadena en varias subcadenas en el foro de Bases de Datos General en Foros del Web. Saludos a todos, estoy empezando a trabajar con SQL y tengo un problema. Actualmente se almacenan los nombres de la siguiente Manera: Tabla Contactos: nombre: ...
  #1 (permalink)  
Antiguo 07/02/2018, 18:42
 
Fecha de Ingreso: noviembre-2003
Mensajes: 127
Antigüedad: 20 años, 4 meses
Puntos: 1
SQL para Separar cadena en varias subcadenas

Saludos a todos, estoy empezando a trabajar con SQL y tengo un problema.
Actualmente se almacenan los nombres de la siguiente Manera:

Tabla Contactos:
nombre:
----------
Ramirez Gonzales / Mario
Gomez / Maria Cecilia
Ruiz Diaz / Juan Carlos
Vega Palacios / Gabriela

Y tengo que hacer un reporte con los campos por separado:

Apellido Paterno | Apellido Materno |Primer Nombre | Segundo Nombre |
-------------------------------------------------------------------------------------------
Ramirez | Gonzales | Mario | |
Gomez | | Maria | Cecilia |
Ruiz | Diaz | Juan | Carlos |
Vega | Palacios |Gabriela | |

Espero puedan ayudarme.

Muchas gracias.

David
  #2 (permalink)  
Antiguo 09/02/2018, 09:35
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: SQL para Separar cadena en varias subcadenas

Si todos estan de esa manera entonces podrias hacer lo siguiente:

Primero hacer un replace para quitar todos los "/"
segundo hacer un substring con un charindex(para buscar el primer caracter en blanco) para sacar el apellido y asi consecutivamente hasta tener las 3 cadenas
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: cadena, campos, sql
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 11:52.