Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2011, 17h03   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 29
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : avril 2008
Messages : 29
Points : 12
Points : 12
Par défaut Requête avec vérification d'existence dans une autre table

Bonjour, j'ai fait quelques recherches et je n'ai pas trouvé chaussure à mon pied.

Je commence par la définition des mes tables :
Table : clients
Table : vendeur_client
Code :
1
2
3
id
vendeur_id
client_id
Table : vendeur
Vous comprendrez que j'ai coupé dans le gras

Je cherche à avoir la liste de tous les clients pour un vendeur qui l'a créé ou qui trouve une correspondance dans la table vendeur_client.

Donc, un vendeur X qui a 10 clients et qui a 5 clients partagés avec un vendeur Y. Je veux que quand le vendeur X est connecté voit les 10 clients. Je veux que quand Y est connecté qu'il voit les 5 clients partagés ainsi que les clients pour lesquels il est le createur.

Je crois que l'explication est assez simple, mais je ne trouve pas de solution.

Merci à l'avance
TigerCX est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2011, 17h33   #2
Membre Expert
 
Inscription : janvier 2010
Messages : 1 084
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2010
Messages : 1 084
Points : 1 573
Points : 1 573
Bonjour

Si je comprend bien :
1/ clients.createur contient un id de vendeur (le vendeur qui a créé le client)
2/ vous voulez, pour un revendeur donné, les client qu'il a créé et/ou auxquel il est rattaché dans la table vendeur_client

par exemple :
Code SQL :
1
2
3
4
5
6
7
8
9
10
 
SELECT C.id 
FROM clients C
WHERE createur = IDDuVendeur
OR EXISTS(
    SELECT *
    FROM vendeur_client
    WHERE client_id = C.id
    AND vendeur_id = IDDuVendeur
)
aieeeuuuuu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 19h06   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 29
Détails du profil
Informations personnelles :
Âge : 31

Informations forums :
Inscription : avril 2008
Messages : 29
Points : 12
Points : 12
Merci infiniment aieeeuuuuu. Mon problème venait surtout de l'utilisation de EXISTS et du transfert de l'information du id client vers la sous requête. Je vais mettre ça dans mon livre d'expérience, ça me sera utile ultérieurement.
TigerCX est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h58.


 
 
 
 
Partenaires

Hébergement Web