Comment récupérer le prix le plus récent par article?
Le
stephan
Bonjour,
j’ai recopié ces posts parce qu’ils expliquent exactement mon problème
auquel il faut que j’ajoute cela :
Le prix renvoyé n’est pas le bon, il n’est d’ailleurs pas le même selon que
l’on prenne le premier ou le dernier (la date elle par contre est correcte,
c’est bien la plus récente).
En lisant la doc, il semble que le prix renvoyé est selon l’ordre
chronologique de saisie (dans le groupe REF) et non pas celui correspondant à
l’enregistrement sélectionné avec la date la plus récente.
Comment récupérer le bon prix ?
Merci pour votre aide et votre temps.
Il faut effectivement que tu fasses une requête regroupement.
Tu sélectionnes le champ référence et tu choisis en opération regroupement,
et pour le champ date tu prends le max. Pour le prix tu prends premier ou
dernier, de toute façon, tu n'as qu'un enregistrement pour une date non ?
Arnaud
Bonsoir,
j'ai une table dans laquelle il y a 3 champs
- REF
- Date
-prix
Je peux avoir plusieurs enregistrements pour la même référence, à des dates
différentes et avec des prix différents, je désire faire une requête qui me
donnera par référence le prix le plus récent
Les dates sont au format texte sous la forme AAAAMMJJ
j'essaye d'utiliser la fonction de regroupement Premier ou Dernier, je n'ai
pas de résultat correct
j’ai recopié ces posts parce qu’ils expliquent exactement mon problème
auquel il faut que j’ajoute cela :
Le prix renvoyé n’est pas le bon, il n’est d’ailleurs pas le même selon que
l’on prenne le premier ou le dernier (la date elle par contre est correcte,
c’est bien la plus récente).
En lisant la doc, il semble que le prix renvoyé est selon l’ordre
chronologique de saisie (dans le groupe REF) et non pas celui correspondant à
l’enregistrement sélectionné avec la date la plus récente.
Comment récupérer le bon prix ?
Merci pour votre aide et votre temps.
Il faut effectivement que tu fasses une requête regroupement.
Tu sélectionnes le champ référence et tu choisis en opération regroupement,
et pour le champ date tu prends le max. Pour le prix tu prends premier ou
dernier, de toute façon, tu n'as qu'un enregistrement pour une date non ?
Arnaud
Bonsoir,
j'ai une table dans laquelle il y a 3 champs
- REF
- Date
-prix
Je peux avoir plusieurs enregistrements pour la même référence, à des dates
différentes et avec des prix différents, je désire faire une requête qui me
donnera par référence le prix le plus récent
Les dates sont au format texte sous la forme AAAAMMJJ
j'essaye d'utiliser la fonction de regroupement Premier ou Dernier, je n'ai
pas de résultat correct

Poser une question


On doit pouvoir s'en sortir avec une requête du genre :
SELECT REF, prix
FROM MyTable my
INNER JOIN (SELECT DISTINCT REF, MAX(Date) as MaxDate FROM MyTable GROUP BY
REF) reg
ON my.REF = reg.REF AND my.Date = reg.MaxDate
----------------------------------------------------------------------
Philippe TROTIN - Microsoft Service France
"stephan" news:
encore (tout juste débutant)
Voici la requête que j'essaie de créer suivant ce conseil:
SELECT Stkrm, Item, [Qty Avail], [Order Date]
FROM [Canada Fillrate Analysis]
my INNER JOIN
(SELECT Stkrm, Item, Max([Order Date]) as MaxDate
FROM [Canada Fillrate Analysis]
GROUP BY [Canada Fillrate Analysis].Stkrm, [Canada Fillrate Analysis].Item
ORDER BY [Canada Fillrate Analysis].Stkrm, [Canada Fillrate Analysis].Item)
reg ON
my.Stkrm=reg.Stkrm AND my.Item=reg.Item AND my.[Order Date]=reg.MaxDate
Quand j'essaie de sauvegarder cela dans la requête (accéedée en mode SQL à
partir du mode création) il y a une erreur Microsoft avec envoi de rapport,...
La requête est-elle bonne telle que ci-dessus,
et si oui comment avancer?
Merci encore
"Philippe T [MS]" wrote:
Je suis plutôt spécialisé SQL que Access mais je pense que vous devriez
écrire :
SELECT Stkrm, Item, [Qty Avail], [Order Date]
FROM [Canada Fillrate Analysis] my
INNER JOIN
(SELECT Stkrm, Item, Max([Order Date]) as MaxDate
FROM [Canada Fillrate Analysis]
GROUP BY [Canada Fillrate Analysis].Stkrm, [Canada Fillrate
Analysis].Item) reg
ON my.Stkrm=reg.Stkrm AND my.Item=reg.Item AND my.[Order Date]=reg.MaxDate
ORDER BY my.Stkrm, my.Item
Le ORDER BY que vous aviez placé dans le deuxième SELECT ne doit pas
fonctionner
----------------------------------------------------------------------
Philippe TROTIN - Microsoft Service France
"stephan" news: