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

Requêtes et SQL. Discussion :

Comparer 2 bases [AC-2003]


Sujet :

Requêtes et SQL.

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut Comparer 2 bases
    Bonjour

    J'aimerai savoir comment je peux comparer 2 BDD qui ont le même nombre et intitulé de colonnes mais qui n'ont pas le même nombre de données ?

    J'aimerai que le résultat de ma requête m'affiche les lignes qui ne sont pas communes au 2 tables.

    Merci de votre aide

  2. #2
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour guigui71,

    Il faut passer par des requêtes de "non-correspondance" dans les deux sens.
    Soit Table1 et Table2, les deux tables à comparer, et Identifiant_commun, l'identifiant commun.

    1ère requête :
    Table1 liée Table2, via Identifiant_commun ;
    selectionner, uniquement, les lignes de Table1 dont Identifiant_commun de Table2 est null.
    ==> tu obtiens la liste des lignes de Table1 absentes dans Table2 (via Identifiant_commun).

    2ème requête :
    Table2 liée Table1, via Identifiant_commun ;
    selectionner, uniquement, les lignes de Table2 dont Identifiant_commun de Table1 est null.
    ==> tu obtiens la liste des lignes de Table2 absentes dans Table1 (via Identifiant_commun).

    Tu peux créer ces requêtes dans l'une des deux bases en liant les tables de l'autre, ou créer une nouvelle base en liant les tables des deux bases à comparer.

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

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    merci de ta réponse.

    Et en langage sql sa donne quoi ?

    car je n'ai pas vu ce type de requêtes pendant ma formation.

    merci richard

  4. #4
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Je te suggère de passer par l'assistant requête : c'est très simple. Ensuite, une fois ta requête créée, tu peux passer en mode d'affichage "SQL" pour voir le code généré.

    Penses à saisir "est null" dans "Critère".

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    OUI mais je n'ai pas compris ton 1er message :

    en faite mes deux bases de données sont composées de caractéristiques communes sauf que dans ma 2eme base, j'ai plus de ligne que dans la BDD1.

    Et je veux ajouter seulement les nouvelles lignes de ma BDD2 dans ma BDD 1 en passant par une étape intermédiaire : soit isolé les nouelles lignes présentes dans BDD2 et non dans BDD1 dans une nouvelle table.

    Et je ne sais pas du tout comment faire.

    Merci beaucoup

  6. #6
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Les deux tables présentes dans BDD1 et BDD2 sont elles à comparer par une clé commune ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    OUi la clé commune est le numéro de dossier.
    Donc en gros des numéro de dossier ne sont pas présent dans la BDD1 mais sont présent dans la BDD2, et c'est ceux la que je cherche à isolé

  8. #8
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Eh bien, c'est parfait (et facile).

    Par l'assistant requête, soit tu choisis l'assistant "requête de non correspondance", soit tu choisis "requête sélection" en effectuant les opérations suivantes :
    • tu ajoutes TableAComparer de BDD2 ;
    • tu ajoutes TableAComparer de BDD1 ;
    • tu fais la liaison entre ces deux tables par NumDossier avec flèche à droite ;
    • tu prends le champ NumDossier de BDD2 ;
    • tu prends le champ NumDossier de BDD1 ;
    • dans "Critère" du champ NumDossier de BDD1 et saisi "Est Null".

    ==> tu obtiens la liste des NumDossier de BDD2 absent(s) dans NumDossier de BDD1.

    Enfin, tu peux afficher le code SQL généré par l'assistant.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    je suis sous acces 2003, et je ne trouve pas requete de non correspondance et requête de sléection

  10. #10
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    L'assistant est présent dans Access 2003.
    Ok, nous allons travailler "en live".

    Quand tu es dans la partie "Requête" et que tu sélectionnes "Nouveau", tu dois voir une fenêtre "Nouvelle requête" avec une liste.

    Nous sommes d'accord, jusque là ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    oui c'est bon

    edit : merci je viens de suivre tes insctuctions et sa marche !

    Merci beaucoup

  12. #12
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Tu sélectionnes "requête de non-correspondance".
    Tu réponds aux questions posées (c'est très clair, de mon point de vue), et ta requête est construite.

    OK, ou nous le faisons ensemble, pas à pas ?

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    c'estr bon j'ai réglé le problème.

    Maintenant, j'aimerai lier mes tables et ex&écuté ma requête depuis acces

    Je ne sais pas comment automatiqser la liaison des tables.

    Par contre je sais comment exécuter ma requête sous excel mais ma requête est trop chargée en caractères.

    Quelq'un a une piste ?

  14. #14
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Je ne comprends pas.

    La requête que tu as créée, tu l'as créée dans Access, non ?

  15. #15
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    oui je l'ai crée sous acces mais j'aimerai l'éxécuter depuis excel en faite

  16. #16
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Simplement pour avoir le résultat sous forme de fichier Excel ?

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 138
    Points : 54
    Points
    54
    Par défaut
    nan

    exécuter la requete depuis excel et avoir le résultat sous excel aussi

    est ce possible ?

  18. #18
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Cela doit se passer via les données externes, je ne connais pas bien.
    Ton problème devient un problème Excel qu'il faut poster dans le forum Excel, donc.

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

Discussions similaires

  1. Comparer données : base firebird et sql server
    Par mercure07 dans le forum SQL
    Réponses: 16
    Dernier message: 30/04/2008, 08h08
  2. [MySQL] Lister un dossier puis comparer à une base de données
    Par jphilippev dans le forum PHP & Base de données
    Réponses: 33
    Dernier message: 03/03/2008, 12h26
  3. [MySQL] Comparer 2 base de données MySQL
    Par takepaf dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 16/07/2007, 11h12
  4. Outil pour comparer des bases SQL Server 2000
    Par plutonium719 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 22/08/2006, 07h54
  5. [Tables] Comparer 2 bases / 2 tables
    Par macben dans le forum Oracle
    Réponses: 3
    Dernier message: 13/01/2005, 11h42

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