Bonjour,
Sur Data Integration Studio 4.5, je souhaite réaliser une simple jointure gauche entre deux tables, mais avec un critère de jointure utilisant une variable générée.
Je passe donc par une sous-requête, afin de générer ma variable et ensuite l'utiliser comme critère de jointure.
Le problème c'est que, bien que l'éditeur graphique semble accepter ma création de variable (mention dans le navigateur de tables, mention dans l'éditeur de jointure au niveau du choix des 'Opérande'), le code généré fait purement et simplement l'impasse sur tout le toutim!
C'est pourtant simple, la PROC SQL que je veux avoir serait du type suivant :
Mais l'éditeur de Data Integration Studio me génère le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 proc sql; create table dimension as select * from (select *, strip(CASE WHEN substr(monid,1,2)="97" THEN substr(monid,1,4) ELSE substr(monid,1,2) END) as mavar from table2) t left join table1 d on (d.mavar=t.mavar); quit;
Forcément, avec une telle requête il ne risque pas de faire la jointure entret et d le gros malin
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 proc sql; create table dimension as select * from (select * from table2) t left join table1 d on (d.mavar=t.mavar); quit;
Alors que l'éditeur graphique indique bien une variable 'mavar' dans la sous-requête et dans le critère de jointure.
quelqu'un a-t-il déjà observé un tel comportement ???
Partager