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

Développement SQL Server Discussion :

Nombre d'occurences d'une valeur d'un champ par rapport à une autre table


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2014
    Messages : 34
    Par défaut Nombre d'occurences d'une valeur d'un champ par rapport à une autre table
    Bonjour à tous,

    Tout est dans l'intitulé, je cherche a compter le nombre de fois où la valeur du champ de ma table A est présente dans ma table B.

    Pour être plus concret, j'ai une table A contenant des clients d'une entreprise A (ID, Nom, Prenom, Adresse, Ville, CP)
    Et une table B contenant des clients d'une entreprise B avec les même champs (ID, Nom, Prenom, Adresse, Ville, CP).

    Je cherche à ressortir une requête qui me donnera pour chaque client de ma table A combien de fois je retrouve ce client dans ma table B.

    Ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select Nom, Prenom, CP, COUNT(*) 
    from TableA
    LEFT OUTER JOIN TableB ON TableA.Nom = TableB.Nom
    				  AND TableA.Prenom = TableB.Prenom
    				  AND TableA.CP = TableB.CP	
    where TableB.Act = 'True' --- notion de client actif ou innactif
    group by Nom, Prenom, CP
    J'y suis presque dirait on car j'ai bien mon nombre d’occurrence par client sauf qu'il m'affiche uniquement les clients présent des 2 côtés c'est à dire où il y a une correspondance.
    Or, j'aurais besoin d'afficher aussi les clients présents dans la table A mais pas présent dans la table B.

    Je n'arrive pas à trouver ce qui me permettrait d'afficher aussi ces clients là...

    En vous remerciant d'avance de votre aide précieuse !

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    93
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 93
    Par défaut
    Salut,

    La clause where est évalué après le résultat de la jointure, et annule de fait la notion de jointure externe.
    Pour corriger le problème, il suffit de mettre ton critère dans le critère de jointure.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    select Nom, Prenom, CP, COUNT(*) 
    from TableA
    LEFT OUTER JOIN TableB ON TableA.Nom = TableB.Nom
    				  AND TableA.Prenom = TableB.Prenom
    				  AND TableA.CP = TableB.CP	
                                      AND TableB.Act = 'True' --- notion de client actif ou innactif
    group by Nom, Prenom, CP

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2014
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2014
    Messages : 34
    Par défaut
    Ha mais oui, en effet je n'avais pas fait attention !
    Erreur de ma part...

    Je te remercie de ton aide !

    Je passe en résolu

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

Discussions similaires

  1. [AC-2010] Renvoyer La valeur d'un champ calculé d'une requete dans un champ donné d'une table
    Par ThaHardy dans le forum Requêtes et SQL.
    Réponses: 21
    Dernier message: 13/07/2015, 16h40
  2. [AC-2010] Selection de la plus haute valeur d'un champs par rapport à un autre champs
    Par HABILER dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 07/08/2014, 08h49
  3. [AC-2000] Donner une valeur dans un champs par rapport à une autre valeur
    Par jclm230759 dans le forum Access
    Réponses: 4
    Dernier message: 08/05/2013, 12h04
  4. Insertion valeur dans un champ par rapport à d'autres
    Par crosse9 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 10/12/2007, 16h05
  5. Réponses: 4
    Dernier message: 24/01/2006, 13h18

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