Bonjour,
J'essaie de reproduire sur mon cas les requêtes utilisant le CONNECT BY PRIOR cités dans cet article (au passage, je ne m'intéresse pas du tout au passage vers DB2, mais seulement aux exemples Oracle), et je n'y arrive pas du tout
Par exemple, la première requête donnée fonctionne très bien sur emp :
Par contre, quand j'essaie de faire la même chose avec ma table, je n'obtiens qu'une seule ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT name FROM emp START WITH name = 'Goyal' CONNECT BY PRIOR empid = mgrid
Quelqu'un verrait-il où est l'erreur dans ma transposition ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 select clef from testkk start with clef = 'COMCE0001200900-001' connect by prior clef = clefsuiv
Merci pour toute piste !
___
Données de test :
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32 CREATE TABLE TESTKK ( CLEF VARCHAR2(20 CHAR), SCRGMOD_GMOD_CODE VARCHAR2(1 CHAR) NOT NULL, CLEFSUIV CHAR(20 CHAR) ) ; Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('COMCE0001200900-001', 'D', NULL); Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('COMCE0001200900-002', 'V', 'COMCE0001200900-001 '); Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('COMCE0001200900-003', 'X', 'COMCE0001200900-002 '); Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('ECOAE0001200900-001', 'D', NULL); Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('ECOAE0001200900-002', 'V', 'ECOAE0001200900-001 '); Insert into TESTKK (CLEF, SCRGMOD_GMOD_CODE, CLEFSUIV) Values ('ECOAE0001200900-003', 'X', 'ECOAE0001200900-002 '); COMMIT;
Partager