rebonjour, je suis toujours sur mon probleme de requete dans le dvlpt de mon application pour une société de transport

j'ai résolu grâce à maxence, le problème de récupérer une valeur maximale mais inférieur à une date entrée par l'utilisateur:

mon code sous sql est le suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
SELECT [DISTRIBUTION CARBURANT].Id_véhicule,
    Max([DISTRIBUTION CARBURANT].[Date de distribution]) AS [MaxDeDate de distribution],
    Max([DISTRIBUTION CARBURANT].[Kilométrage véhicule]) AS [MaxDeKilométrage véhicule]
FROM [DISTRIBUTION CARBURANT], [consommation véhicule]
WHERE ((([DISTRIBUTION CARBURANT].[Date de distribution])=
       select  max([DISTRIBUTION CARBURANT].[Date de distribution])
       FROM  [DISTRIBUTION CARBURANT] 
       WHERE  [DISTRIBUTION CARBURANT].Id_véhicule=[consommation véhicule].Id_véhicule 
           AND [DISTRIBUTION CARBURANT].[Date de distribution]<#04/01/2006#)))
GROUP BY [DISTRIBUTION CARBURANT].Id_véhicule;
Il fonctionne, néanmoins il a fallu que j'intègre ce code, à une requete complete
voici le code sql de ma requete:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
SELECT [consommation véhicule].Id_véhicule, 
    [consommation véhicule ].Immatriculation, 
    [consommation véhicule].Parc, 
    Count([consommation véhicule].[Kilométrage véhicule]) AS [Nombre réappro],
 
   (   SELECT max([DISTRIBUTION CARBURANT].[kilométrage véhicule])  
       FROM  [DISTRIBUTION CARBURANT]  
       WHERE ([DISTRIBUTION CARBURANT].[date de distribution])=
               (SELECT max([DISTRIBUTION CARBURANT ].[date de distribution]) 
               FROM  [DISTRIBUTION CARBURANT]  
               WHERE  [DISTRIBUTION CARBURANT].[id_véhicule=consommation véhicule].[id_véhicule] 
                   and [DISTRIBUTION CARBURANT].[date de distribution]<#04/01/2006#))  AS [Kilométrage M-1],
Min([consommation véhicule].[Kilométrage véhicule]) AS [Premier kilométrage],
Max([consommation véhicule].[Kilométrage véhicule]) AS [Dernier kilométrage], 
Sum([consommation véhicule].[Quantitée corrigée]) AS [Litrage consommé], 
[Dernier kilométrage]-[Kilométrage M-1] AS [Kilométrage parcouru], 
[Litrage consommé]/[Kilométrage parcouru]*100 AS CONSOMMATION
FROM [consommation véhicule] INNER JOIN [DISTRIBUTION CARBURANT] ON 
    [consommation véhicule].Id_distribution = [DISTRIBUTION CARBURANT].Id_distribution
GROUP BY [consommation véhicule].Id_véhicule, [consommation véhicule].Immatriculation, [consommation véhicule].Parc;
Mon problème est le suivant, la colonne de ma requete nommée [kilométrage m-1] m'affiche des résultats erronés parfois bon, parfois mauvais!!!!
que faire?