p
u
b
l
i
c
i
t
é
publicité

Discussion: Left outer join

  1. #1
    Invité de passage
    Inscrit en
    août 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 5
    Points : 1
    Points
    1

    Par défaut Left outer join

    Bonsoir à tous,

    Veuillez excuser ma stupidité mais vraiment...mon désespoir est grand!
    Alors voilà! je n'arrive pas à faire un left outer join sur ces deux requetes qui marchent bien independamment. que dois je faire? le champ que j'ai en commun sur le resultat final de chacune des requetes c'est le branchcode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      select b.branchcode, b.branchname, cp.proddesc
        from branchinfo b, cardprodinfo cp
    group by b.branchcode, b.branchname, cp.proddesc
    order by b.branchcode asc;
     
      Select ci.branchcode, cp.proddesc, count(*)
        from cardinfo ci join cardprodinfo cp on (ci.prodcode=cp.prodcode)
       where ci.cardstatus in ('02','10','12','26') 
    group by ci.branchcode, cp.proddesc;
    Qu'est-ce qui cloche ?

    Merci d'avance.

  2. #2
    Invité de passage
    Inscrit en
    août 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : août 2007
    Messages : 5
    Points : 1
    Points
    1

    Par défaut

    et voilà en fait ce que j'ecris. mais jai le message d'erreur ci.branchecode invalide identifier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    SELECT b.branchcode, b.branchname, cp.proddesc
    FROM branchinfo b, cardprodinfo cp 
     
    LEFT OUTER JOIN 
     
    (SELECT ci.branchcode,cp.proddesc, count(*)
    FROM cardinfo ci join cardprodinfo cp on (ci.prodcode=cp.prodcode)
    WHERE ci.cardstatus in ('02','10','12','26') 
    GROUP BY ci.branchcode, cp.proddesc) 
     
    ON b.branchcode=ci.branchcode
     
    GROUP BY b.branchcode, b.branchname, cp.proddesc
    ORDER BY b.branchcode asc;

  3. #3
    Membre régulier
    Inscrit en
    décembre 2006
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : décembre 2006
    Messages : 140
    Points : 86
    Points
    86

    Par défaut

    Bonjour,

    il faut mettre un alias sur la vue dynamique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    SELECT b.branchcode, b.branchname, cp.proddesc
    FROM branchinfo b, cardprodinfo cp 
    
    LEFT OUTER JOIN 
    
    (SELECT ci.branchcode,cp.proddesc, count(*)
    FROM cardinfo ci join cardprodinfo cp on (ci.prodcode=cp.prodcode)
    WHERE ci.cardstatus in ('02','10','12','26') 
    GROUP BY ci.branchcode, cp.proddesc)  V1
    ON b.branchcode=V1.branchcode
    
    GROUP BY b.branchcode, b.branchname, cp.proddesc
    ORDER BY b.branchcode asc;
    La différence entre la théorie et la pratique, c'est qu'en théorie il n'y a pas de différence entre la théorie et la pratique. En pratique, si.

Discussions similaires

  1. Probleme de NULL avec LEFT OUTER JOIN
    Par jiluc dans le forum MS SQL-Server
    Réponses: 2
    Dernier message: 12/01/2006, 14h42
  2. Bug LEFT OUTER JOIN Firebird
    Par Fabio2000 dans le forum SQL
    Réponses: 3
    Dernier message: 21/11/2005, 09h08
  3. Problème avec left outer join
    Par jgfa9 dans le forum Requêtes
    Réponses: 1
    Dernier message: 22/08/2005, 21h07
  4. Problème de performance avec LEFT OUTER JOIN
    Par jgfa9 dans le forum Requêtes
    Réponses: 6
    Dernier message: 17/07/2005, 13h17
  5. concatenation de chaine dans un left outer join
    Par the_edge dans le forum MS SQL-Server
    Réponses: 4
    Dernier message: 11/11/2004, 16h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo