Requête sql union de ms access erronée sans le prédicat all.

Description

Mon travail consiste à fournir à des gestionnaires des données budgétaires à jour. Ces données se composent d?un budget original pour chaque projet de construction et de virements. Un virement est un montant budgétaire soustrait d?un projet (provenance) et ajouté à un autre (destination). Pour produire le budget après virements par projet, j?ai créé une série de requêtes basées sur 2 tables (budget original et virements) qui fournissent;
- les provenances budgétaires (montants soustraits du budget d?un projet);
- les destinations budgétaires (montants ajoutés au budget d?un projet);
- l?union des provenances et destinations;
- le total net des virements par projet basé sur la requête précédente;
- le budget après virements basé sur la table du budget original et la requête précédente.

A mon premier essai et après vérification, j?ai constaté que le budget après virement d?un projet était erroné parce que la requête UNION ne tenait pas compte d?un virement. Ce virement avait la même provenance, destination et montant qu?un autre virement et n?était pas pris en considération parce UNION exclut les duplicatas. J?ai résolu le problème en remplaçant UNION par UNION ALL.

Le fichier zip ci-inclus (base Access 2000) démontre cet effet.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.