Bonjour,
J'ai un problème similaire à celui-ci.
J'ai pas mal parcouru les autres sujets et a vrai dire je me retrouve avec le même problème a chaque fois.
J'explique :
Je possède un champ, que j'utilise dans un requête et ce champs me retourne une liste ( exemple :"142;654;12" ) et ensuite de cette liste je dois chercher un libellé qui va correspondre a chaque nombre, un mot 142, un mot pour 654 ... Et va me le retourner dans une liste si possible
Donc j'imagine qui faut mettre la liste séparer dans un tableau, faire la requête et mettre le résultat dans une liste. Je n'ai aucune idée de comment faire ça j'ai beaucoup chercher et je suis tombé sur ça :
Je me demande si on peut le faire en remplaçant la chaine au début par un champs, j'ai essayé mais sans résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 WITH t AS ( SELECT 'one|two|three|four|five|six|seven' c FROM dual --UNION ALL SELECT 'Un|Deux|Quatre' FROM dual ) SELECT extractvalue(COLUMN_VALUE,'/x') as liste FROM t, TABLE( xmlsequence(EXTRACT(XMLTYPE('<list><x>'|| REPLACE(c,'|','</x><x>') ||'</x></list>') , '/list/x'))); LISTE one two three four five six seven
Je sollicite donc votre aide !!
Merci bonne journée
Partager