Bonjour,

je travaille avec oracle 10g. j'ai des pb de perf sur une requête.
Voici ce que je fais :
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
 
OPEN c_curseur FOR SELECT DISTINCT 
                         r.chp1 ||
                         ';'            ||
                         r.chp2         ||
                         ';'                
                    FROM tab1 r
                    WHERE chp1= 'toto';
 
LOOP 
        FETCH c_curseur
        INTO v_ligne;
        EXIT WHEN c_curseur%NOTFOUND;
 
        val_return := val_return || v_ligne || chr(10);
 
 
 END LOOP;
Le Select dure qq secondes mais la boucle dure vers les 25 min pour 7000 lignes traitées.

Comment je peux l'optimiser ?

merci