Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Contribuez
Contribuez Access : Vos contributions. Postez ici vos codes sources, conseils, astuces et autres propositions. Ce forum n'est pas un forum technique mais destiné aux contributions pour www.developpez.com
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 29/06/2006, 09h59   #1
Nouveau Membre du Club
 
Inscription : octobre 2004
Messages : 50
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 50
Points : 28
Points : 28
Par défaut Requête UNION renvoie pas le bon nombre de lignes

Bonjour,

J'ai un petit soucis avec la mise au point d'une requête UNION.
Je la met en copie ci-dessous.
La première partie seule renvoi 16 ligne.
La deuxième partie seule en renvoie 4.
La requête UNION devrait en renvoyer 20: elle n'en renvoie que 17!

Si quelqu'un a une petite idée, qu'il soit remercié de m'en faire part!!

Philippe

SELECT Year([OPIM_DATEFINRECACQ]) AS Année, [MBDR_MONTANTRECREEL]*0.804 AS CAHT
FROM OPIMMO_OPIM INNER JOIN MBDEPREC_MBDR ON OPIMMO_OPIM.OPIM_ID=MBDEPREC_MBDR.OPIM_ID
WHERE (((Year([OPIM_DATEFINRECACQ])) Is Not Null) AND (([MBDR_MONTANTRECREEL]*0.804) Is Not Null) AND ((OPIMMO_OPIM.OPIM_FINRECACQOK)=True))
UNION SELECT Year([OPIM_DATEFINRECACQ]) AS Année, [VLIGN_TTCREEL]*(1-[VTVA_POURC]) AS CAHT
FROM OPIMMO_OPIM INNER JOIN ((VEFAFAISTYPE_VTYP INNER JOIN VEFAFAISLIB_VLIB ON VEFAFAISTYPE_VTYP.VTYP_ID = VEFAFAISLIB_VLIB.VTYP_ID) INNER JOIN (VEFAFAISTVA_VTVA INNER JOIN VEFAFAISLIGNE_VLIGN ON VEFAFAISTVA_VTVA.VTVA_ID = VEFAFAISLIGNE_VLIGN.VTVA_ID) ON VEFAFAISLIB_VLIB.VLIB_ID = VEFAFAISLIGNE_VLIGN.VLIB_ID) ON OPIMMO_OPIM.OPIM_ID = VEFAFAISLIGNE_VLIGN.OPIM_ID
WHERE (((VEFAFAISTYPE_VTYP.VTYP_TYPE)="RECETTE") AND ((OPIMMO_OPIM.OPIM_FINRECACQOK)=True));
le lynx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2006, 10h41   #2
Membre Expert
 
Inscription : mars 2005
Messages : 1 565
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 565
Points : 2 178
Points : 2 178
Une requête UNION élimine les doublons dans les lignes qu'elle renvoie. Tu dois donc avoir une ligne en doublon. Pour forcer la clause UNION à conserver les doublons dans les résultats retournés, utilise UNION ALL en mode sql.
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2006, 10h52   #3
Nouveau Membre du Club
 
Inscription : octobre 2004
Messages : 50
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 50
Points : 28
Points : 28
Oui, merci, c'est bien ça, je viens aussi de trouver la réponse
le lynx 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 00h05.


 
 
 
 
Partenaires

Hébergement Web