outer join qui renvoie un résultat deux fois

outer join qui renvoie un résultat deux fois - SQL/NoSQL - Programmation

Marsh Posté le 27-06-2005 à 10:43:17    

bonjour,
j'ai une requète utilisant des outer join
 

Code :
  1. pour info :
  2. Select  FINANCEUR.FINANCEUR_CDC,
  3.   FINANCEUR.FINANCEUR_LIB,
  4.   @NULLVALUE(SUM(V_PLAN_AVC.MT_PROG),0),
  5.   @INT( SUM( @NULLVALUE( V_PLAN_AVC.IND_ENGAGE, 0 ) ) / SUM(1) ),
  6.   @INT( SUM( @NULLVALUE( V_PLAN_AVC.IND_SOLDE, 0 ) ) / SUM(1) )
  7.  From  FINANCEUR,
  8.   V_PLAN_AVC,
  9.   PROJET_INTERREG
  10.  Where  FINANCEUR.FINANCEUR_CDC = V_PLAN_AVC.FINANCEUR_CDC (+)
  11.  And FINANCEUR.FINANCEUR_CDC <> '8'
  12.  And FINANCEUR.FINANCEUR_CDC <> '9'
  13.  And V_PLAN_AVC.OPER_CDN (+) = PROJET_INTERREG.OPER_CDN
  14.  And PROJET_INTERREG.PROJ_INTERREG_CDN = 3358
  15.  And V_PLAN_AVC.PROG_CDN = 1
  16.  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 :
  1. And FINANCEUR.FINANCEUR_CDC <> '8'
  2. And FINANCEUR.FINANCEUR_CDC <> '9'


par

Code :
  1. 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
Reply

Marsh Posté le 27-06-2005 à 10:43:17   

Reply

Marsh Posté le 29-06-2005 à 16:35:52    

t'as essayé avec la clause DISTINCT ?

Reply

Marsh Posté le 29-06-2005 à 18:01:40    

je ne peux pas car des montants pourraient être égaux :/
bah, spas grave, on a trouvé une soluce de contournement et apparemment, ça viendrait plus d'une corruption de données sur une opération
 
merci quand même :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed