Una difícil en SQL....

Pablo Ponte Miserendino
19 de Septiembre del 2004
Hola a todos....espero que alguien pueda ayudarme...:]

El tema sintetiza es: como puedo llevar algo asi :
valor1, valor2, valor3.....
a algo asi:
valor1
valor2
valor3.....

Si no se entendio de primera paso a explicar el tema en detalle:

Todo esto debe solucionarse únicamente con SQL ya que es información para generar una vista (para luego hacer nu LOV)...

Traigo una cadena de una tabla de parámetros, la cual es una lista separada con comas (esto es en una columna de una fila particular):
Valor1, valor2, valor3, valor4....
NO SE cuantos valores tiene las lista....

Ahora lo que necesito es crear una vista con un valor por fila...

VALOR
=====
Valor1
Valor2
Valor3
....

Como puedo hacer esto ????

Un dato...estos valores no cambian hasta que se reinicia la base (y solo en casos particulares)....por eso habia pensado en crear una vista estática con código dinámico cada vez que se inicia la DB, por eso es que les pregunto ¿Se pueden definir JOBs que disparen con cada STARTUP de la base?¿Cómo se harian?...de esta manera los datos se actualizan cada vez que se inicia la base y puedo consultar desde la vista estática sabiendo que esos datos solo cambiaran cuando se reinicie la base.....

Esta es una solucón alternativa que no me termina de convencer....si alguien puede darme un consejo de como puedo resolverlo por SQL le voy a estar muy agradecido....

Salu2...

manic
19 de Septiembre del 2004
Pueder recorrer la cadena con un bucle for, preguntando si esa posicion es una coma. Cuando la encuentres, deberas saber en que posicion encontraste la anterior, y tendras que usar substr para coger el tramo entre las dos comas, e insertarlo o hacer con el lo q quieras. Luego sigue recorriendo la cadena, y haciendo lo mismo hasta llegar al final (el bucle sera de 1 a length (cadena). Al final tendras el ultimo tramo, desde la ultima coma encontrada, y al comenzar deberas coger substr desde la posicion 1 hasta la primera coma -1.

Pablo Ponte Miserendino
19 de Septiembre del 2004
Eso ya lo habia pensado...pero no se puede hacer esto en una caonsulta....y por lo tanto no puedo crear una LOV de esta manera....
Gracias de todas Formas