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 :

Requête SQL doublons et 2 bases


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 49
    Points : 39
    Points
    39
    Par défaut Requête SQL doublons et 2 bases
    Bonjour à tous,

    Je viens demander votre aide car je m'arrache les cheveux sur une requête qui ne me semblait pas trop compliquée à la base et qui finalement me pose soucis.


    J'ai 2 BDD différentes sur un même serveur qu'oon appelera bdd1 et bdd2.
    Je souhaite récupérer dans une table t1 de la bdd 1 les enregistrements dont l'email est en doublon, jusque là avec la requête suivante ça fonctionne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT ap.*, COUNT(*) AS nbr_doublon
    FROM b1.t1 ap
    WHERE 1
    GROUP BY ap.cont_email
    HAVING nbr_doublon > 1
    Ensuite, ce que je souhaite est de pouvoir n'afficher les resultats que des email présent dans b2.t2 !

    J'ai essayé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SELECT ap.*, COUNT(*) AS nbr_doublon
    FROM b1.t1 ap
    JOIN b2.t2 hb
    ON ap.cont_email = hb.EmailAddress
    GROUP BY ap.cont_email
    HAVING nbr_doublon > 1
    et

    SELECT ap.*, COUNT(*) AS nbr_doublon
    FROM b1.t1 ap
    WHERE ap.cont_email IN (SELECT hb.EmailAddress FROM b2.t2 hb)
    GROUP BY ap.cont_email
    HAVING nbr_doublon > 1
    mais ça ne fonctionne pas, en fait ma requête tourne sans jamais s'arrêter et ça fait planter le serveur :/

    Merci par avance pour votre aide car là, je ne sais pas comment faire cette requête

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    cette requête est bonne (bien que je prefere lapproche avec un EXISTS) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SELECT ap.*, COUNT(*) AS nbr_doublon
    FROM b1.t1 ap
    WHERE ap.cont_email IN (SELECT hb.EmailAddress FROM b2.t2 hb)
    GROUP BY ap.cont_email
    HAVING nbr_doublon > 1

    Si votre serveur n'arrive pas à l’exécuter c'est qu'il est mal taillé (MySql..?)

    En desespoire de cause rajouter un index sur la colonne email des deux tables.

  3. #3
    Membre expérimenté
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Points : 1 717
    Points
    1 717
    Billets dans le blog
    6
    Par défaut
    @Yekhen, tu parles de deux bases de données. quel SGBD travailles tu?
    d'avoir Pensé à voter positivement pour ceux qui vous ont aidés et surtout à mettre si le cas.
    ça encourage.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Février 2006
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    Citation Envoyé par islamov2000 Voir le message
    @Yekhen, tu parles de deux bases de données. quel SGBD travailles tu?
    MySQL (j'utilise HeidiSql comme interface).

    J'ai fais un test et quand les tables sont dans la même BDD, effectivement la requête fonctionne bien

Discussions similaires

  1. Variables dans requête SQL d'Excel vers base Access
    Par Banjalex dans le forum Excel
    Réponses: 2
    Dernier message: 20/03/2014, 16h53
  2. Réponses: 1
    Dernier message: 24/06/2010, 18h31
  3. Réponses: 26
    Dernier message: 17/07/2008, 14h17
  4. [VBA-E] Requète SQL avec chemin de base de données variable
    Par Svart26 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/05/2006, 13h29
  5. requête SQL avec paramètre en vb avec base de donnée SQL srv
    Par dialydany dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 01/02/2005, 10h33

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