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

PL/SQL Oracle Discussion :

jointure entre 2 tables


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 86
    Par défaut jointure entre 2 tables
    Bonjour,

    J'ai une table tab1 avec la structure suivante:
    chp1 de type char
    chp2 de type char
    chp3 de type char

    Une 2 eme table tab2 avec la structure suivante:
    chp1 de type char
    chp4 de type char
    chp5 de type char

    Je veux recuperer les lignes de la table tab1 si la chp2 <> chp4 ou si chp2 n'existe pas dans la table tab2. Je fais une jointure externe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT tab1.chp1, chp2, chp3, chp4, chp5
    FROM tab1, tab2
    WHERE tab1.chp1 = tab2.chp1 (+)
    and tab1.chp2 <> tab2.chp4 (+)
    and 0 = tab2.chp5 (+)
    En executant la requete, ttes les lignes de la table tab1 ressortent avec chp4 vide.
    En retirant le (+) dans la jointure tab1.chp2 <> tab2.chp4 (+), j'ai seulement les lignes dont le chp4 a été modifié mais pas les nouvelles lignes.

    Merci

  2. #2
    Membre éclairé Avatar de rvfranck
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2004
    Messages
    746
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2004
    Messages : 746
    Par défaut
    Citation Envoyé par radahm Voir le message
    Je veux recuperer les lignes de la table tab1 si la chp2 <> chp4
    Alors pourquoi tu fais cette jointure externe?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    and tab1.chp2 <> tab2.chp4 (+)


    Citation Envoyé par radahm Voir le message
    ou si chp2 n'existe pas dans la table tab2
    Tu as voulu dire "chp2 n'existe pas dans tab1"? parce que d'après ton post tab2 n'a pas de champ chp2.
    Citation Envoyé par radahm Voir le message
    Une 2 eme table tab2 avec la structure suivante:
    chp1 de type char
    chp4 de type char
    chp5 de type char

  3. #3
    Membre éclairé Avatar de rvfranck
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2004
    Messages
    746
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2004
    Messages : 746
    Par défaut
    Je n'ai peut être pas bien compris ta question, mais si tu as voulu dire
    Je veux recuperer les lignes de tab1 dans lesquelles chp2 <> chp4 ou dans lesquelles chp2 n'existe pas.
    Essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    select tab1.chp1, chp2, chp3, chp4, chp5
    from tab1, tab2
    where tab1.chp1 = tab2.chp1 (+)
    and (tab1.chp2 <> tab2.chp4
    or tab1.chp2 is null)

Discussions similaires

  1. PROBLEME DE JOINTURE ENTRE DEUX TABLE
    Par DarkMax dans le forum Langage SQL
    Réponses: 13
    Dernier message: 13/01/2005, 15h11
  2. Jointure entre 3 tables
    Par zigune dans le forum Langage SQL
    Réponses: 9
    Dernier message: 15/11/2004, 16h04
  3. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50
  4. [jointure]requete possible de double jointure entre 2 tables
    Par akira_le_gaucher dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/05/2004, 15h03
  5. Jointure entre 2 tables et OR
    Par PyRoFlo dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/02/2004, 18h42

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