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

SQL Oracle Discussion :

Jointure qui ne jointure pas.. :o


Sujet :

SQL Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 134
    Points : 71
    Points
    71
    Par défaut Jointure qui ne jointure pas.. :o
    Bonjour,

    pardonnez-moi ce titre assez fantaisiste, mais j'ai un problème assez particulier
    Faisons simple :

    J'ai deux tables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    T1(Modele_De_Carte (pk), Fournisseur, Chipset)
    
    T2(id_T2 (pk), Modele_Carte, Baie)

    Note : je ne peux avoir de clé étrangères entre ces tables malgré les champs communs "Modele_De_Carte" et "Modele_Carte". En effet, certaines valeurs de "Modele_Carte" se trouvent dans T2 mais pas dans T1 (j'obtiens donc l'erreur ORA-02298 parent keys not found). Mais celà ne change pas le problème en lui-même...

    Voici un exemple de ce que peut contenir T1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ABC-2-3, ZZ, BC3
    ETR-5-55, TT, JH3

    Voici ce que peut contenir T2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    1, ABC-2-3, 09
    2, ABC-2-3, 87
    3, ETR-5-55, 4
    Voici la requête que je tente d'exécuter (celà ne me retourne aucune ligne) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Select * from T1 INNER JOIN T2
    ON T1.Modele_De_Carte=T2.Modele-Carte;
    Donc jamais de résultats, et je ne vois vraiment pas pourquoi... J'ai d'autres tables dans le même genre (avec clés primaires mais pas d'étrangères, et je les relies très bien entre-elles sans soucis).

    Merci de votre aide

  2. #2
    Expert éminent sénior Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Points : 11 252
    Points
    11 252
    Par défaut
    Vérifiez le contenu de vos tables
    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
    25
     
    Connected to Oracle9i Enterprise Edition Release 9.2.0.5.0 
    Connected as mni
     
    SQL> 
    SQL> with t1 as (
      2  Select 'ABC-2-3' As Modele_De_Carte, 'ZZ' As Fournisseur, 'BC3' As Chipset from dual union all
      3  Select 'ETR-5-55', 'TT', 'JH3' from dual
      4  ),
      5  t2 as (
      6  Select 1 As id, 'ABC-2-3' As Modele_Carte, '09' As Baie  from dual union all
      7  Select 2, 'ABC-2-3', '87'  from dual union all
      8  Select 3, 'ETR-5-55', '4'   from dual
      9  )
     10  SELECT * FROM T1 INNER JOIN T2
     11  ON T1.Modele_De_Carte=T2.Modele_Carte
     12  /
     
    MODELE_DE_CARTE FOURNISSEUR CHIPSET         ID MODELE_CARTE BAIE
    --------------- ----------- ------- ---------- ------------ ----
    ABC-2-3         ZZ          BC3              1 ABC-2-3      09
    ABC-2-3         ZZ          BC3              2 ABC-2-3      87
    ETR-5-55        TT          JH3              3 ETR-5-55     4
     
    SQL>

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 134
    Points : 71
    Points
    71
    Par défaut
    J'ai revérifié toutes mes valeurs, elles sont en effet identiques... sauf une chose

    Les valeurs Modele_De_Carte de T1 contenait des espaces avant et après... Donc la comparaison n'était pas bonne

    Bref (encore) une erreur stupide qui m'aura fait perdre 1h30 pour pas grand chose

    Merci pour ton aide Mintu

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

Discussions similaires

  1. Jointure qui ne fonctionne pas
    Par kcizth dans le forum SQL
    Réponses: 4
    Dernier message: 26/02/2008, 17h36
  2. Jointure Qui Ne Marche Pas
    Par nicerico dans le forum Requêtes
    Réponses: 3
    Dernier message: 07/08/2007, 10h49
  3. Plein de jointures qui ne fonctionnent pas
    Par petchos dans le forum Langage SQL
    Réponses: 4
    Dernier message: 03/08/2007, 13h53
  4. jointure qui ne fonctionne pas
    Par zulot dans le forum Langage SQL
    Réponses: 3
    Dernier message: 14/06/2006, 14h53
  5. [SQL] Requête à jointure qui ne fonctionne pas
    Par Bensor dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/12/2004, 16h10

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