Bonjour,
je devais modifier ce matin une requete pour ajouter un champs. Celui ci ayant ete mis a jour par les administrateur uniquement dans une autre vue.
J'ai donc modifie ma requete en rajoutant une jointure vers cette vue, ma requete incluait deja deux jointures entre deux tables et une vue. J'ai deja ecris pas mal de requete pour cette base et je n'ai jamais eu de problemes, mais la apres moulte tests j'ai l'impression que mes deux vues ne se supportent pas dans la meme requete. Elles ne sont meme pas jointes directement, mais toutes les deux a la tables principales.
Voici ma requete:
Voici mon message d'erreur :
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 select a.NAT_CUST_ID,c.CUST_NAME, b.ACCOUNT_NO, a.ACC_NAME, min(b.MONTH_REF), b.REP_ID, b.REP_NAME, c.ALHO_CUST_NO, d.Nat_Add_Line_3 from ACCOUNT a, Gvw_Rpt_ATB_GetDebtorsSummaryfor360Days b, NATIONAL_CUSTOMER c, Gvw_Rpt_Sales_GetAllSalesDetails d where b.ACCOUNT_NO=a.ACCOUNT_NO and c.NAT_CUST_ID=a.NAT_CUST_ID and d.ACCOUNT_NO=a.ACCOUNT_NO and not b.MONTH_REF like '2002%' and not b.MONTH_REF like '2003%' and not b.MONTH_REF like '2004%' and not b.MONTH_REF like '2005%' group by a.NAT_CUST_ID,c.CUST_NAME, b.REP_ID, b.REP_NAME, b.ACCOUNT_NO, a.ACC_NAME,c.ALHO_CUST_NO, d.Nat_Add_Line_3 order by a.NAT_CUST_ID, b.ACCOUNT_NO;
Je travaille sous SQL server. J'ai bien pense a recuperer les champs directement dans la table d'origine mais je ne dispose pas de la definition de la vue en question, et apparemment les admin sont a singapour, si je leur demande j'en ai pour trois mois.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Server: Msg 301, Level 16, State 2, Line 1 Query contains an outer-join request that is not permitted.
J'ai effectue pas mal de tests avec LEFT OUTER JOIN, en enlevant des tables etc... Apres test il semble que la source de l'erreur soit vraiment la presence de mes deux vues dans la meme requete.
J'espere que qq'un pourra me conseiller,
Merci
Partager