Bonjour
Je vais tenter de décrire clairement mon besoin. ;)
Voici ma table de départ MITBAL :
Pièce jointe 568558
Et voici ce que je souhaite obtenir au final :
Pièce jointe 568560
J'ai besoin de récupérer les agences (MBWHLO) / articles (MBITNO) qui sont en OD (MBORTY) sur une 2nde agence (MBSUWH), et dont cette 2nde agence/article est également en OD sur une 3eme agence.
Tous les éléments sont présents dans la table de départ.
Pour y arriver, j'ai décomposé la problématique :
1) je crée une 1ere table en ne tenant compte que des agences/articles qui sont en OD
Ce qui donne la table suivante :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Tab1: LOAD [MBWHLO] AS WHLOTab1, [MBITNO] AS ITNOTab1, [MBORTY] AS ORTYTab1, [MBSUWH] AS SUWHTab1 ; SQL SELECT "MBWHLO", "MBITNO", "MBORTY", "MBSUWH" FROM "PRDM3"."M3FDBPRD"."MITBAL" where mbcono = 100 and mbwhlo <> 'A00' and mborty = 'OD' and left(mbsuwh,1) <> ' ';
Pièce jointe 568572
2) je crée une 2nde table identique en ne tenant compte que des agences/articles qui sont en OD
qui donne la table suivante :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Tab2: LOAD [MBWHLO] AS WHLOTab2, [MBITNO] AS ITNOTab2, [MBORTY] AS ORTYTab2, [MBSUWH] AS SUWHTab2 ; SQL SELECT "MBWHLO", "MBITNO", "MBORTY", "MBSUWH" FROM "PRDM3"."M3FDBPRD"."MITBAL" where mbcono = 100 and mbwhlo <> 'A00' and mborty = 'OD' and left(mbsuwh,1) <> ' ';
Pièce jointe 568577
3) A présent, j'ai besoin de lier les 2 tables
Mais le code ci-dessus ne fonctionne pas.Code:
1
2
3
4
5 Tab3: select * from tab1; join select * from tab2 where ITNOTab1 = ITNOTab2 and SUWHTab1 = WHLOTab2 and ORTYTab1 = ORTYTab2 ;
Quelle syntaxe utiliser pour obtenir ce lien entre les 2 tables et ainsi obtenir les données des 2 tables dont j'ai besoin ?
Ceci dit, il y a peut-être plus simple pour y arriver.
Merci pour vos conseils