Bonjour,

Voilà je galère un peu pour utiliser cette requête dans le power center designer.
Mes questions : comment créer mes alias qui sont dans les jointures? (ID_MAR1, MARQ1, ID_MAR2, MARQ2)
Pour ID_MAR1 et ID_MAR2 cela se fait dans un bloc d'aggrégat ?
Car il faut d'abord que je crée ces 4 alias pour pouvoir ensuite faire ceux du select...

La requête en question :

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
select  
etb_siret as SIRET,etb_raison as RAISON_SOCIALE,
 
( select lim_marque from liens_ent_marque where ID_MAR1=lim_id) as CODE_MARQUE1,
(select tpv_prm1 from tblprm_valeurs where tpv_idtps=11 and 
   tpv_id= (select lim_marque from liens_ent_marque where ID_MAR1=lim_id)) as LIB_MARQUE1,
(select tpv_prm1 from tblprm_valeurs where tpv_idtps=18 and 
   tpv_id= (select lim_statauto from liens_ent_marque where ID_MAR1=lim_id)) as LIB_STATUT1,
(case when ID_MAR1<> ID_MAR2 then (select lim_marque from liens_ent_marque where ID_MAR2=lim_id) else '' end) as CODE_MARQUE2,
(case when ID_MAR1<> ID_MAR2 then (select tpv_prm1 from tblprm_valeurs where tpv_idtps=11 and 
   tpv_id= (select lim_marque from liens_ent_marque where ID_MAR2=lim_id) )else '' end) as LIB_MARQUE2,
(case when ID_MAR1<> ID_MAR2 then (select tpv_prm1 from tblprm_valeurs where tpv_idtps=18 and 
   tpv_id= (select lim_statauto from liens_ent_marque where ID_MAR2=lim_id) )else '' end) as LIB_STATUT2
 
 
 
from etablissements 
left join (select lim_idetb,min(lim_id) as ID_MAR1
   from liens_ent_marque where lim_isupp=0
   group by lim_idetb) as MARQ1 on MARQ1.lim_idetb=etb_id
left join (select lim_idetb,max(lim_id) as ID_MAR2
   from liens_ent_marque where lim_isupp=0
   group by lim_idetb) as MARQ2 on MARQ2.lim_idetb=etb_id
 
where etb_isupp=0 and etb_siret is not null 
order by etb_siret
Merci d'avance pour votre aide !

==> Tout mettre dans un bloc SQL et créer les champs "a la mano" !!!