L'accès substituer à l'EXCEPTION de la clause
Comment puis-je obtenir le même résultat que je voudrais obtenir le code SQL ci-dessous dans ms access? Il ne reconnaît pas la EXCEPT
clause...
SELECT DISTINCT
P.Name,
T.Training
FROM Prof AS P,
Training_done AS TC,
Trainings AS T
WHERE (P.Name Like '*' & NameProf & '*')
AND (P.Primary_Area = T.Cod_Area)
EXCEPT
SELECT DISTINCT
P.Name,
T.Training
FROM Prof AS P,
Training_done AS TC,
Trainings AS T
WHERE (P.Name Like '*' & NameProf & '*')
AND (P.Cod_Prof = TC.Cod_Prof);
Merci d'avance!
Vous devez vous connecter pour publier un commentaire.
Afin de se débarrasser de la
EXCEPT
vous pouvez combiner les conditions et réduire à néant la seconde:WHERE NOT EXISTS ({except query})
mais votre approche est beaucoup plus simple pour ce cas particulier.correspond à
EXCEPT
clause de trouver aussi des différences, et pas seulement unNULL
condition.utiliser le trouver inégalée assistant dans MS Access > Créer > Assistant Requête et vous obtiendrez le résultat suivant
Union est d'un Accès séparé de la Requête que j'ai utilisé à l'union de quelques tables au lieu d'utiliser des sous-requêtes
Pas un exemple explicite ici, mais pensez UNION-ment les deux extraites des tables et à la sélection, à partir de cette union, les paires qui ont moins de 2 instances d'une certaine combinaison de champs. Cela implique que, où chaque table dispose de plus d'une instance d'un enregistrement avec les mêmes valeurs sur le champ de combinaison, ces dossiers sont les mêmes et peuvent être éliminés de l'ensemble de résultats. Où pas, ils sont uniques à un tableau, en laissant aller chercher avec uniquement les enregistrements de la table où il n'y a pas de match à l'autre table. Comme une sorte de mauvaise de l'homme ", SAUF" KW.