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

Langage SQL Discussion :

Difference entre 2 tables


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Par défaut Difference entre 2 tables
    Bonjour a tous,

    Une petite question, j'ai 2 tables ou je devrais logiquement avoir le meme nombre de lignes.
    Cependant, il y a une difference. Je voudrais essayer de savoir dans un premiere temps quels sont ces lignes supplementaires...

    Voici un premier code que j'ai ecrit que je n'arrive pas a faire fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select CONTRACT_HIERARCHY.CONTRACT_ID 
    from CONTRACT_HIERARCHY 
    where CONTRACT_HIERARCHY.CONTRACT_ID is not in 
    (select HY_CONTRACTRESULT.CONTRACTID from HY_CONTRACTRESULT)
    J'ai aussi essaye un truc du genre mais aucun moyen :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT CONTRACT_HIERARCHY.CONTRACT_ID
    FROM CONTRACT_HIERARCHY LEFT JOIN HY_CONTRACTRESULT ON CONTRACT_HIERARCHY.CONTRACT_ID = HY_CONTRACTRESULT.CONTRACTID 
    GROUP BY CONTRACT_HIERARCHY.CONTRACT_ID HAVING (((CONTRACT_HIERARCHY.CONTRACT_ID)<>(HY_CONTRACTRESULT.CONTRACTID)));
    Je travaille sur une BD Oracle 10g.

    Merci pour vos conseils...

    Mario

  2. #2
    Membre Expert Avatar de scheu
    Inscrit en
    Juin 2007
    Messages
    1 506
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 1 506
    Par défaut
    Le plus simple c'est d'utiliser MINUS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT champ1, champ2, champ3, ... FROM table1
    MINUS
    SELECT champ1, champ2, champ3, ... FROM table2;
     
    SELECT champ1, champ2, champ3, ... FROM table2
    MINUS
    SELECT champ1, champ2, champ3, ... FROM table1;
    Si ce sont des tables volumineuses, il faut faire une jointure ou un NOT EXISTS
    La théorie, c'est quand on sait tout mais que rien ne fonctionne.
    La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
    Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

    Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/

  3. #3
    Membre éclairé
    Inscrit en
    Août 2006
    Messages
    307
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2006
    Messages : 307
    Par défaut
    OK pour le NOT EXISTS

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT * FROM HY_CONTRACTRESULT
    WHERE NOT exists 
    (SELECT * from CONTRACT_HIERARCHY  where CONTRACT_HIERARCHY.Contract_ID= HY_CONTRACTRESULT.CONTRACTID)
    Il faut juste mettre la requête dans le bon sens...


    Merci beaucoup pour ce coup de pouce

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

Discussions similaires

  1. [ODBC] Difference entre 2 table
    Par nawak.seb dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 01/12/2008, 18h59
  2. Chercher des differences entre deux tables
    Par pierre24 dans le forum SAS Base
    Réponses: 2
    Dernier message: 30/07/2008, 15h56
  3. Difference entre ouvrir table et select
    Par Lancyo dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 25/10/2007, 16h35
  4. difference entre 2 tables access
    Par voyageur dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 10/08/2007, 15h47
  5. [D7][BDE]Difference entre deux tables
    Par fthdz dans le forum Bases de données
    Réponses: 6
    Dernier message: 15/03/2007, 23h09

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