Separar Apellidos en una tabla.

phsanchez
21 de Junio del 2006
Buenos Dias
Tengo una consulta , espero me solucionen el problema; tengo una tabla en SQL con el campo NOMBRE, el cual se escriben el apellido paterno, materno y nombres(en ese orden)..
Lo que necesito es poderlos separar en tres columnas diferentes: Apellido Paterno, Apellido Materno, Nombres.

El campo NOMBRE, no esta separado por ningun caracter, solo por caracteres en blanco.
Les agradecer su ayuda.. de antemano gracias.

Jor-El
21 de Junio del 2006
Hola, no sé SQL, yo solo soy un pequeño gurú en Oracle, te digo como lo haría en Oracle a ver si lo puedes traducir a SQL :

Presuponemos que apellido paterno, materno y nombres no son compuestos, si no, no sirve ( Si el nombre es compuesto , si ).

Con la función INSTR buscas la posición del primer espacio en blanco y de todo el campo haces la SUBSTR desde la primera posición hasta la posición del espacio en blanco :

variable = substr(campo,1,instr(campo,' '));

Y así con el apellido materno y el nombre pero partiendo de la posición del espacio en blanco.

Creo que lo puedes entender ¿ verdad ?

Lo que no sé es si esas funciones ( INSTR, SUBSTR ) existen en sql, pero seguro que habrá algo parecido.

Suerte