OVH Cloud OVH Cloud

demande de requete...merci

2 réponses
Avatar
je cherche la bonne requete et je n'arrive pas =E0 la=20
trouver ! Merci de votre aide

sous vb6, j'ai deux tables tableA et TableB dans la m=EAme=20
base

chacune de ces tables contient 5 champs (en fait il y en=20
a d'autres mais je veux faire une s=E9lection sur ces 5=20
champs):

champs "date" de type date/time
champs "executant" de type text qui peut prendre 2=20
valeurs soit "as" soit "veilleur"
champs "nom" de type text
champs "prenom" de type text
champs "action" de type text

je cherche une requ=EAte me permettant se s=E9lectionner tous=20
les enregistrements de la tableA qui ne sont pas=20
strictement identiques =E0 ceux de tableB pour ces 5 champs

par exemple l'enregistrement suivant de la tableA
14/01/2005 as BOBO paul manger
doit =EAtre retenu m=EAme si les 2 enregistrements suivants=20
dans tableB sont pr=E9sents
13/01/2005 as BOBO paul manger
14/01/2005 veilleur BOBO paul manger

par contre il ne sera pas retenu si=20
14/01/2005 as BOBO paul manger
est pr=E9sent dans tableB

j'ai essay=E9 avec=20
SELECT * From tableA WHERE (tableA.date not in (select=20
date from tableB)) or (tableA.executant not in (select=20
executant from tableB)) or (tableA.nom not in (select nom=20
from tableB)) or (tableA.prenom not in (select prenom=20
from tableB)) or (tableA.action not in (select action=20
from tableB))

mais cela me redouble des enregistrements...Piti=E9 et=20
merci de votre r=E9ponse
Fran=E7ois
.

2 réponses

Avatar
Jean-Marc
a écrit dans le message de
news:0f3f01c4fa7e$c56dfec0$
je cherche la bonne requete et je n'arrive pas à la
trouver ! Merci de votre aide

sous vb6, j'ai deux tables tableA et TableB dans la même
base

chacune de ces tables contient 5 champs (en fait il y en
a d'autres mais je veux faire une sélection sur ces 5
champs):

champs "date" de type date/time
champs "executant" de type text qui peut prendre 2
valeurs soit "as" soit "veilleur"
champs "nom" de type text
champs "prenom" de type text
champs "action" de type text

je cherche une requête me permettant se sélectionner tous
les enregistrements de la tableA qui ne sont pas
strictement identiques à ceux de tableB pour ces 5 champs

par exemple l'enregistrement suivant de la tableA
14/01/2005 as BOBO paul manger
doit être retenu même si les 2 enregistrements suivants
dans tableB sont présents
13/01/2005 as BOBO paul manger
14/01/2005 veilleur BOBO paul manger

par contre il ne sera pas retenu si
14/01/2005 as BOBO paul manger
est présent dans tableB



Hello,

si ta base est une base Access, ceci doit marcher (je n'ai
fait que avec 2 champs, juste pour montrer) (toute l'idée est
dans le 'LEFT JOIN'):

TABLE A
prenom nom
---------------
robert dupont
jean durand
paul dubois
jean martin

TABLE B
prenom nom
---------------
andre truc
robert machin
jean martin
paul dubois
louis dupont

SELECT Table1.nom, Table1.prenom
FROM Table1 LEFT JOIN Table2 ON (Table1.nom = Table2.nom) AND
(Table1.prenom = Table2.prenom) WHERE (((Table2.prenom) Is Null));

RESULT
nom prenom
---------------
robert dupont
jean durand

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
Avatar
Impec...merci bien
françois