Bonjour à toutes et à tous,
Pour entrer directement dans le vif du sujet voic ma requête
Je préferes vous prevenir que je travaille sur les tables d'un progiciel que je ne connais pas très bien et qui est étrangement construit...
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 SELECT decode(F.fatype, 'F','Fa','A','Av') "Type Fact", lpad(F.fadrec,9,' ') "Date Recep", F.fanfac "Num Fact", nvl(F.famtht,0)-nvl(F.faremi,0)+nvl(F.fatva,0) "Mt TTC", F.factier "Num Four", T.fnfo "Fournisseur", F.fanoeng "NumEng", F.enexe "ExeEngt", decode(F.faceo,'B','BT','O','OS','C','Cde') "TE", C.dest "Dest", K.Pecodop "Nom" FROM ksaifac F, ksbsuifa C, kfourni T, KPERSONL K, KVENG ENG WHERE (F.faexe=C.faexe) AND (F.fanfac=C.fanfac) AND (F.fatype=C.fatype) AND (F.factier=T.fcfo) AND (F.fanoeng(+)=ENG.ENNO) AND (ENG.PEC=K.PEC) AND (F.valid is null) AND (C.dest like UPPER('%&&PARAM1%')) AND (F.fadrec >= DECODE('&&PARAM2',null,'01-JAN-00','&&PARAM2')) AND (C.rowid=(SELECT min(C2.rowid) FROM ksbsuifa C2 WHERE C.fanfac=C2.fanfac)) ORDER BY F.fadrec
Pour être bref, c'est ici que j'ai des soucis
En effet, il faudrait que je puisse ramener dans mes résultats la colonne FANOENG sachant que certains enregistrement n'ont pas de valeur pour ce champs là, par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part AND (F.fanoeng(+)=ENG.ENNO)
Or la requête malgrès la jointure externe ne me raméne pas les enregistrement qui ne respectent pas la jointure890 2002 BT NORD
890 2002 NORD
890 2002 BT NORD
512 2002 OS CENT
512 2002 CENT
1354 2002 CO CENT
...DU coup j'ai l'impression que c'est pas trop clair ce que je raconte...
Code : Sélectionner tout - Visualiser dans une fenêtre à part AND (F.fanoeng(+)=ENG.ENNO)
Ma question est donc est ce que j'utilise la jointure comme il faut ?
Il y a-t-il d'autres méthodes avec Oracle 8-i permettant de ramener les bons enregistrement , c'est à dire tous ce de la table F completer des données de la table ENG lorsque la jointure est réspécté ???
Merci d'avance pour vos réponses et désolés d'avance pour la charabia
Jdotti
Partager