Bonjour à tous,
Je bute depuis deux jours sur un problème SQL qui paraît pourtant très simple.
Aussi, je viens vous solliciter pour un peu d'aide.
J'ai une table VERDOC qui contient des versions de document avec un lien réflexif (annule et remplace)
PK_VER_MAJ, PK_VER_MIN, FK_VER_MAJ, FK_VER_MIN
1, 0, Null, Null // 1ere version
1, 1, 1, 0 // La version 1.1 remplace la 1.0
1, 2, 1, 1 // etc
2, 0, 1, 2
J'ai une table INVERDOC qui pointe sur une version de document
PK_CODE, FK_VER_MAJ, FK_VER_MIN
TEST10, 1, 0
TEST11, 1, 1
TEST20, 2, 0
Ma requête doit ramener toutes les versions antérieures à celle pointée par la seconde table avec PK_CODE en première colonne
TEST10, 1, 0
TEST11, 1, 1
TEST11, 1, 0
TEST20, 2, 0
TEST20, 1, 2
TEST20, 1, 1
TEST20, 1, 0
J'ai essayé avec un CONNECT BY et START WITH sur la table VERDOC qui me ramène bien les versions de document antérieures à une certaine version mais je n'arrive pas à l'imbriquer avec INVERDOC pour avoir le bon résultat.
Merci pour votre aide.
Cdt
Jm
Partager