bonjour,
j'ai une requète utilisant des outer join
Code :
- pour info :
- Select FINANCEUR.FINANCEUR_CDC,
- FINANCEUR.FINANCEUR_LIB,
- @NULLVALUE(SUM(V_PLAN_AVC.MT_PROG),0),
- @INT( SUM( @NULLVALUE( V_PLAN_AVC.IND_ENGAGE, 0 ) ) / SUM(1) ),
- @INT( SUM( @NULLVALUE( V_PLAN_AVC.IND_SOLDE, 0 ) ) / SUM(1) )
- From FINANCEUR,
- V_PLAN_AVC,
- PROJET_INTERREG
- Where FINANCEUR.FINANCEUR_CDC = V_PLAN_AVC.FINANCEUR_CDC (+)
- And FINANCEUR.FINANCEUR_CDC <> '8'
- And FINANCEUR.FINANCEUR_CDC <> '9'
- And V_PLAN_AVC.OPER_CDN (+) = PROJET_INTERREG.OPER_CDN
- And PROJET_INTERREG.PROJ_INTERREG_CDN = 3358
- And V_PLAN_AVC.PROG_CDN = 1
- Group By 1, 2;
|
qui me renvoie donc une liste normale sauf qu'une des lignes est répétée deux fois.
j'ai beau regarder au niveau des données, il n'y a pas de corruption quelconques, les oper_cdn sont bien des clés primaires etc.
là où ça devient très curieux, c'est que si je remplace
Code :
- And FINANCEUR.FINANCEUR_CDC <> '8'
- And FINANCEUR.FINANCEUR_CDC <> '9'
|
par
Code :
- And FINANCEUR.FINANCEUR_CDC < '8'
|
ça me renvoie le bon résultat (sans la ligne dupliquée) alors que le financeur_cdc de la ligne dupliquée est pourtant égal à '1'
au vu de cette dernière étrangeté, est-ce possible que ce soit un bug du SGBD (SQLBase) ?
ah et puis cette étrangeté n'arrive que pour une seule opération (un oper_cdn) au milieu de milliers d'autres
merci
Message édité par Fender le 27-06-2005 à 10:45:31