IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

Oracle : Jointure externe


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Par défaut Oracle : Jointure externe
    Bonjour,

    J'ai un problème avec une jointure externe...
    je fais dans ma requête SQL sous Oracle un count par magasin..
    quand il n'y a pas de données pour un magasin, je veux qu'il m'affiche 0 au lieu de ne rien mettre.
    J'ai donc fait une jointure externe.
    Mais cela ne fonctionne pas apparemment.
    Quelqu'un aurait il une autre solution?

  2. #2
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Par défaut
    Si tu donnais la description de tes tables et ta requête, cela serait plus facile de t'aider...

  3. #3
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Tu dois avoir dans ta clause where un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Table1.lien = Table2.lien
    qui tu remplaces par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Tablie1.lien = Table2.lien(+)
    et dans ton select tu places un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      SELECT NVL(MaColonneQuiDoitEtreA0SiNull,0)
    Bien sur tout ceci est de specifique Oracle et tu peux aussi utiliser
    le OUTER JOIN et le COALESCE

    Voila, mais comme le dit Mediat, sans descriptif et sans informations complementaires, ont ne peut pas faire grand chose.

    J'espere que ca peut t'aider
    Bon courage

  4. #4
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Table1.lien = Table2.lien
    qui tu remplaces par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Tablie1.lien = Table2.lien(+)
    et dans ton select tu places un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      SELECT NVL(MaColonneQuiDoitEtreA0SiNull,0)
    j'ai utilisé ce système mais je ne vois pas apparaitre .

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Par défaut
    Voici ma requête:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    select idmag, count(idpers)
    from tpers, tmag 
    where magrtt(+)= decode(length(idmag),2,'100'||idmag,3,'10'||idmag,1,'1000'||idmag,4,'1'||idmag)
    groupby idmag
    
    et voici la description des tables:

    Table Tpers:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    idpers varchar2(10)
    title  varchar2(3)
    sexe varchar2(1)
    prenom varchar2(50)
    nom   varchar2(50)
    magrtt varchar2(15)
    table tmag
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    idmag number(5)
    nom   varchar2(100)
    region number(2)

  6. #6
    Inactif   Avatar de Médiat
    Inscrit en
    Décembre 2003
    Messages
    1 946
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 946
    Par défaut
    Je viens d'essayer ta requête : elle fonctionne très bien !!!!

  7. #7
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Je confirme ce qu'a dit Mediat, elle fonctionne
    Quelle est ta version d'Oracle ??

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Par défaut
    Pourtant moi j'ai 3 magasins qui n'apparaissent pas car il n'y a aucune donnée...
    bon je vais continuer à chercher...

  9. #9
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    donnes nous les scripts d'insertion de tes tables, ca peut nous aider a t'aider

  10. #10
    Membre éclairé
    Inscrit en
    Décembre 2005
    Messages
    455
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 455
    Par défaut
    Pardon je n'avais pas vu ta question.
    Ma version d'oracle est la dernière...10i?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Oracle] Tris sur des jointure externes
    Par roychris dans le forum Langage SQL
    Réponses: 6
    Dernier message: 28/04/2006, 05h25
  2. [Oracle 8] Jointure externe multiple et valeurs nulles !!!
    Par nsonnier dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/03/2006, 22h22
  3. [Oracle 8i] Jointures externes des 2 côtés
    Par yAnSoLo82 dans le forum Oracle
    Réponses: 4
    Dernier message: 23/12/2005, 11h23
  4. Réponses: 2
    Dernier message: 22/04/2005, 16h44
  5. Réponses: 6
    Dernier message: 20/09/2004, 15h26

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