SQL - tengo una cadena con apellido, nombre y tengo que obtener nombre y apellidos

 
Vista:

tengo una cadena con apellido, nombre y tengo que obtener nombre y apellidos

Publicado por carlos (6 intervenciones) el 31/01/2019 21:05:33
a ver. en una consulta en oracle tengo que sacar visible el nombre y el apellido siguien una condicion que no viene al caso. el problema es que en la base de datos esta como un varchar2 y viene como apellido, nombre y la unica forma que se me ocurre es usar
select LTRIM(nomem,'qwertyuiopñlkjhgfdsazxcvbnm')
from temple;
eso elimina todas las letras hasta la , y luego le sumo la Rtrim y haria lo mismo desde la derecha hasta la , quedando el nombre y luego el apellido
pero el ltrim no me funciona no se porque
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

tengo una cadena con apellido, nombre y tengo que obtener nombre y apellidos

Publicado por leonardo_josue (1172 intervenciones) el 01/02/2019 20:58:26
Hola Carlos:

No me queda claro cómo tienes los datos en tu tabla y qué es lo que quieres obtener. Te sugiero que en lugar de poner un código SQL comiences por postear la estructura completa de tu tabla y que pongas algunos datos de ejemplo. A partir de esos datos dinos qué es el o que quieres obtener como salida.

También dinos con qué Base de Datos estás trabajando así como la Versión/Edición de la misma, ya que cada DBMS maneja una sintaxis y funciones propias sobre todo para el manejo de cadenas.

Saludos
Leo.
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

tengo una cadena con apellido, nombre y tengo que obtener nombre y apellidos

Publicado por Carlos (6 intervenciones) el 01/02/2019 21:18:59
La base de datos es Oracle g11
Te puedo meter todo lo que tu querés de datos pero no es necesario solo necesito saber como poner en una consulta si yo tengo en la base de datos
Pérez, manolo
Y que se muestre como manolo Pérez al hacer la consulta
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

tengo una cadena con apellido, nombre y tengo que obtener nombre y apellidos

Publicado por leonardo_josue (1172 intervenciones) el 05/02/2019 17:57:55
Hola de nuevo Carlos:

1
2
"Te puedo meter todo lo que tu querés de datos pero no es necesario solo necesito saber como poner en una consulta si yo
tengo en la base de datos"

Tal vez para ti no sea necesario poner los datos que te pido, pero para nosotros es muy importante pues tu mismo lo haz dicho TU TIENES LA BASE DE DATOS y nosotros no tenemos idea de cómo tienes tu información. La idea de que pongas datos es PARA QUE NOSOTROS MISMOS PODAMOS HACER PRUEBAS... y darte una respuesta más cercana a la realidad. Entre más detalles nos des más factible será que te podamos ayudar.

Para tu consulta, la puedes hacer de muchas formas. La más simple sería utilizando la función SUBSTR:

1
2
3
4
select
'Pérez, manolo' nombre_1,
SUBSTR('Pérez, manolo', 8, 6) || ' ' || SUBSTR('Pérez, manolo', 1, 5) nombre_2
from dual;

Obviamente este código sirve sólo para este ejemplo en concreto (qué es lo único que pusiste de datos). Para generalizar el ejemplo deberás de cambiar los índices de inicio y fin de la función SUBSTR. Si en todos tus casos tienes una coma que separa la parte del apellido del nombre entonces puedes utilizar la funcion INSTR para buscar este caracter

1
2
3
4
select
'Pérez, manolo' nombre_1,
INSTR('Pérez, manolo', ',') indice
from dual;

También podrías utilizar otras formas como usar EXPRESIONES REGULARES. si no sabes de qué estoy hablando, pregúntale a San GOOGLE por algunos ejemplos de cómo separar una cadena utilizando expresiones regulares en ORACLE.

Saludos
Leo.
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