Ver Mensaje Individual
  #8 (permalink)  
Antiguo 17/04/2008, 14:59
jc3000
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 16 años, 11 meses
Puntos: 43
Re: PL/SQL/Procedimiento: Invertir frase por palabras

Vale, mira.

a := instr('perico','r');

Esto te devuelve en " a " la posición en la que se encuentra la letra " r "

Utiliza esto :

a := instr('JUAN GONZALEZ LOPEZ',' ')

Ya tienes la posicion en la que se encuentra el primer espacio en blanco, entonces solo tienes que hacer esto :

b := substr('JUAN GONZALEZ LOPEZ',1, a)

Y esto te devuelve JUAN, ahora solo tienes que darle la vuelta para dejarlo en NAUJ y así hasta que proceses toda la cadena 'JUAN GONZALEZ LOPEZ'