Requête pour vendre des produits non vendus à des clients!
5 réponses
Fabien
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la
question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces clients.
Comment effectuer une requête me permettant de cibler tous les clients
n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous
enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne
continuation
--
Fabien, qui cordialement vous remercie....
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour.
il faut faire une requête de non-correspondance, par exemple: SELECT clients.Numéro, clients.Lenom, clients.Adresse FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro WHERE (((locations.Numéro) Is Null)); -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces clients. Comment effectuer une requête me permettant de cibler tous les clients n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne continuation -- Fabien, qui cordialement vous remercie....
Bonjour.
il faut faire une requête de non-correspondance, par exemple:
SELECT clients.Numéro, clients.Lenom, clients.Adresse
FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro
WHERE (((locations.Numéro) Is Null));
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de news:
6D4D187D-2A08-4C15-B6DB-992A9B188BA5@microsoft.com...
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la
question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces
clients.
Comment effectuer une requête me permettant de cibler tous les clients
n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous
enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne
continuation
--
Fabien, qui cordialement vous remercie....
il faut faire une requête de non-correspondance, par exemple: SELECT clients.Numéro, clients.Lenom, clients.Adresse FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro WHERE (((locations.Numéro) Is Null)); -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces clients. Comment effectuer une requête me permettant de cibler tous les clients n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne continuation -- Fabien, qui cordialement vous remercie....
Fabien
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Bonjour.
il faut faire une requête de non-correspondance, par exemple: SELECT clients.Numéro, clients.Lenom, clients.Adresse FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro WHERE (((locations.Numéro) Is Null)); -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces clients. Comment effectuer une requête me permettant de cibler tous les clients n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne continuation -- Fabien, qui cordialement vous remercie....
Merci Monsieur Raymond pour votre diligente réponse...
Mais Je ne suis pas du tout bon en sql
Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat,
contrats.lclient, contrats.contrats, contrats.commercial
FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien...
J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas
quoi...
Merci d'avance pour votre précieuse aide
Fabien
Bonjour.
il faut faire une requête de non-correspondance, par exemple:
SELECT clients.Numéro, clients.Lenom, clients.Adresse
FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro
WHERE (((locations.Numéro) Is Null));
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de news:
6D4D187D-2A08-4C15-B6DB-992A9B188BA5@microsoft.com...
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la
question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces
clients.
Comment effectuer une requête me permettant de cibler tous les clients
n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous
enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne
continuation
--
Fabien, qui cordialement vous remercie....
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Bonjour.
il faut faire une requête de non-correspondance, par exemple: SELECT clients.Numéro, clients.Lenom, clients.Adresse FROM clients LEFT JOIN locations ON clients.Numéro = locations.Numéro WHERE (((locations.Numéro) Is Null)); -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour à tous,
La réponse sera peut être simple mais comme je ne trouve pas...Je pose la question.
Pour exemple :
Soit une table clients et une sous table locations de dvd pour ces clients. Comment effectuer une requête me permettant de cibler tous les clients n'ayant pas vu le dvd "xyz" par une requête parametrée?
Le truc qui me bloque c'est que je ne retire du résultat que les sous enregistrements mais pas le client...
J'éspère avoir été clair dans ma formulation et vous souhaite une bonne continuation -- Fabien, qui cordialement vous remercie....
Raymond [mvp]
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire
composer le type de contrat qu'on ne veut pas (not like) alors qu'en général
on fait composer le contrat que l'on désire traiter.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de news:
3F22A2CF-893E-4939-9929-9B179A336FF0@microsoft.com...
Merci Monsieur Raymond pour votre diligente réponse...
Mais Je ne suis pas du tout bon en sql
Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat,
contrats.lclient, contrats.contrats, contrats.commercial
FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien...
J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas
quoi...
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Fabien
Bonjour,
Suis vraiment désolé... Mais après moult essais, le problème n'est pas résolu ni avec and ou or... Le not like correspondait a enlever tous les clients ayant deja contracté un type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte un contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant... Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Bonjour,
Suis vraiment désolé...
Mais après moult essais, le problème n'est pas résolu ni avec and ou or...
Le not like correspondait a enlever tous les clients ayant deja contracté un
type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un
type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte un
contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je
demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de
M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant...
Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire
composer le type de contrat qu'on ne veut pas (not like) alors qu'en général
on fait composer le contrat que l'on désire traiter.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de news:
3F22A2CF-893E-4939-9929-9B179A336FF0@microsoft.com...
Merci Monsieur Raymond pour votre diligente réponse...
Mais Je ne suis pas du tout bon en sql
Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat,
contrats.lclient, contrats.contrats, contrats.commercial
FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien...
J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas
quoi...
Suis vraiment désolé... Mais après moult essais, le problème n'est pas résolu ni avec and ou or... Le not like correspondait a enlever tous les clients ayant deja contracté un type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte un contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant... Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Raymond [mvp]
Bonjour.
ça revient à faire ce que tu avais indiqué en premier: WHERE (((contrats.ncontrat) Is Null) mais il faut agrandir ta sélection des champs par tous les champs que tu as besoin.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour,
Suis vraiment désolé... Mais après moult essais, le problème n'est pas résolu ni avec and ou or... Le not like correspondait a enlever tous les clients ayant deja contracté un type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte un contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant... Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...
Merci d'avance pour votre précieuse aide
Fabien
Bonjour.
ça revient à faire ce que tu avais indiqué en premier:
WHERE (((contrats.ncontrat) Is Null) mais il faut agrandir ta sélection des
champs par tous les champs que tu as besoin.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de news:
2325B341-BF70-41BB-BB0B-E5298177A6AE@microsoft.com...
Bonjour,
Suis vraiment désolé...
Mais après moult essais, le problème n'est pas résolu ni avec and ou or...
Le not like correspondait a enlever tous les clients ayant deja contracté
un
type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un
type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte
un
contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je
demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de
M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant...
Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire
composer le type de contrat qu'on ne veut pas (not like) alors qu'en
général
on fait composer le contrat que l'on désire traiter.
--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" <Fabien@discussions.microsoft.com> a écrit dans le message de
news:
3F22A2CF-893E-4939-9929-9B179A336FF0@microsoft.com...
Merci Monsieur Raymond pour votre diligente réponse...
Mais Je ne suis pas du tout bon en sql
Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat,
contrats.lclient, contrats.contrats, contrats.commercial
FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like
[Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien...
J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas
quoi...
ça revient à faire ce que tu avais indiqué en premier: WHERE (((contrats.ncontrat) Is Null) mais il faut agrandir ta sélection des champs par tous les champs que tu as besoin.
-- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Bonjour,
Suis vraiment désolé... Mais après moult essais, le problème n'est pas résolu ni avec and ou or... Le not like correspondait a enlever tous les clients ayant deja contracté un type de contrat.
L'idée est d'obtenir la liste de tous les clients n'ayant pas contracté un type de contrat. donc d'exclure par exemple Mr. Paul qui a deja contracte un contrat de type x un autre de type y en interrogeant la liste.
Mon problème est que ma requête m'enlève bien m. Paul contrat x si je demande dans ma requete Not Like "x", mais pas M. Paul contrat y.
Donc ma requete doit enlever toute les lignes concernant les contrats de M.paul si une de ces lignes comporte le contrat x.
Voila !!! Et je suis désolé de ne pas avoir été plus clair auparavant... Merci de votre aide !!
A+
Fabien
dans la clause where il me semble que le test n'est pas bon:
WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
je pense qu'il doit falloir un test Or au lieu de And , et pourquoi faire composer le type de contrat qu'on ne veut pas (not like) alors qu'en général on fait composer le contrat que l'on désire traiter. -- @+ Raymond Access MVP http://OfficeSystem.Access.free.fr/ http://OfficeSystem.Access.free.fr/runtime/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Fabien" a écrit dans le message de news:
Merci Monsieur Raymond pour votre diligente réponse... Mais Je ne suis pas du tout bon en sql Donc j'ai écris ceci dans ma requête selection
SELECT clients.nclient, clients.nom, clients.prenom, contrats.ncontrat, contrats.lclient, contrats.contrats, contrats.commercial FROM clients LEFT JOIN contrats ON clients.nclient = contrats.lclient WHERE (((contrats.ncontrat) Is Null) AND ((contrats.contrats) Not Like [Saisir ici le type de contrat]));
Avant ou après la demande contrat je n'obtiens rien... J'ai du louper qqchose mais mystères et boules de gomme, je ne sais pas quoi...