Bonjour tout le monde!

J'aurais besoin de votre aide sur le sujet suivant:

J'ai une procédure avec quelques curseurs et je garde les résultats dans une variable de type TABLE OF x:

donc:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
type x is record(...) ;
type y is table of x;
ma_var y;
J'invoque ensuite une fonction en passant la variable du type que j'ai crée. my_func(ma_var)

Ma question est: comment puis-je accéder aux valeurs de ma_var dans my_func?

Je pourrais faire:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
FOR i IN ma_var.FIRST .. ma_var.LAST
      LOOP
..
END LOOP;
mais j'ai besoin de faire un select distinct sur ma_var.

J'ai testé avec un curseur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 TYPE item_rec IS RECORD(item_id NUMBER(20));
 
 TYPE rc_distinct_items IS REF CURSOR RETURN item_rec;
 
 c_distinct_items rc_distinct_items;
 l_distinct_items item_rec;
et ensuite:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
open c_distinct_items for select distinct from (ma_var);

mais apparemment je ne pourrais pas utiliser ma_var dans un select.. :/

Quelqu'un a une solution ?