obtenir la date max moins 1

Le
Talliac
Re bonjour,

Je dispose d'une table à 3 champs :
code valeur
date
cours

c'est une table historique cours valeurs

Je souhaiterais calculer la variation des cours entre la date max et la date
qui précède cette date max.


Pour déterminer la date max c'est ok en faisant une requête avec les champs
code valeur et date.
Par contre pour la date max -1 je sèche un peu.

Quelqu'un a-t-il une idée ?

Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Talliac
Le #19199041
Bonsoir Dragan,

Pour l'instant je n'arrive pas à faire tourner votre requête, cela tourne
sans fin.
Je dois mal procéder, j'essaye de voir où est le problème.

merci.

"Dragan" a écrit :

Bonjour Taillac,
la date précédant la datemax, est la date max des dates restantes donc plus
petites que date max.

un truc du genre : Pour l'exemple j'appelle la table TABLE

SELECT A.[code valeur], A.date,A.cours, B.cours
FROM Table as A, Table as B
WHERE A.date=(SELECT Max(date) FROM Table)
AND B.date=(SELECT Max(date) FROM Table WHERE date<A.date);



"Talliac" a écrit :

> Re bonjour,
>
> Je dispose d'une table à 3 champs :
> code valeur
> date
> cours
>
> c'est une table historique cours valeurs
>
> Je souhaiterais calculer la variation des cours entre la date max et la date
> qui précède cette date max.
>
>
> Pour déterminer la date max c'est ok en faisant une requête avec les champs
> code valeur et date.
> Par contre pour la date max -1 je sèche un peu.
>
> Quelqu'un a-t-il une idée ?
>
> Merci.
>
>
>
>


Michel__D
Le #19199831
Bonjour,

Essaye comme ceci (à adapter) :

SELECT A.IdValeur, A.DateEnr, A.Cours, B.DateEnr, B.Cours
FROM Bourse AS A, Bourse AS B
WHERE A.DateEnr (SELECT Max(DateEnr) FROM Bourse WHERE IdValeur=A.IdValeur)
And B.DateEnr (SELECT Max(DateEnr) FROM Bourse WHERE IdValeur=A.IdValeur And DateEnr<A.DateEnr);


Talliac a écrit :
Bonsoir Dragan,

Pour l'instant je n'arrive pas à faire tourner votre requête, cela tourne
sans fin.
Je dois mal procéder, j'essaye de voir où est le problème.

merci.

"Dragan" a écrit :

Bonjour Taillac,
la date précédant la datemax, est la date max des dates restantes donc plus
petites que date max.

un truc du genre : Pour l'exemple j'appelle la table TABLE

SELECT A.[code valeur], A.date,A.cours, B.cours
FROM Table as A, Table as B
WHERE A.date=(SELECT Max(date) FROM Table)
AND B.date=(SELECT Max(date) FROM Table WHERE date<A.date);



"Talliac" a écrit :

Re bonjour,

Je dispose d'une table à 3 champs :
code valeur
date
cours

c'est une table historique cours valeurs

Je souhaiterais calculer la variation des cours entre la date max et la date
qui précède cette date max.


Pour déterminer la date max c'est ok en faisant une requête avec les champs
code valeur et date.
Par contre pour la date max -1 je sèche un peu.

Quelqu'un a-t-il une idée ?

Merci.










Dragan
Le #19201271
Bonjour Taillac,
essaie peut-être ceci

SELECT A.[code valeur], A.date, A.cours, Nz(B.Cours,0)
FROM Table As A LEFT JOIN Table As B ON B.[code valeur]=A.[code valeur]
WHERE A.[code valeur] IN (SELECT DISTINCT [code valeur] FROM Table)
AND A.date=(SELECT Max(Table.date) FROM Table WHERE Table.[code
valeur]=A.[code valeur])
AND B.date=(SELECT Max(Table.date) FROM Table WHERE Table.[code
valeur]=A.[code valeur] AND Table.date<A.date);


"Talliac" a écrit :

Bonsoir Dragan,

Pour l'instant je n'arrive pas à faire tourner votre requête, cela tourne
sans fin.
Je dois mal procéder, j'essaye de voir où est le problème.

merci.

"Dragan" a écrit :

> Bonjour Taillac,
> la date précédant la datemax, est la date max des dates restantes donc plus
> petites que date max.
>
> un truc du genre : Pour l'exemple j'appelle la table TABLE
>
> SELECT A.[code valeur], A.date,A.cours, B.cours
> FROM Table as A, Table as B
> WHERE A.date=(SELECT Max(date) FROM Table)
> AND B.date=(SELECT Max(date) FROM Table WHERE date<A.date);
>
>
>
> "Talliac" a écrit :
>
> > Re bonjour,
> >
> > Je dispose d'une table à 3 champs :
> > code valeur
> > date
> > cours
> >
> > c'est une table historique cours valeurs
> >
> > Je souhaiterais calculer la variation des cours entre la date max et la date
> > qui précède cette date max.
> >
> >
> > Pour déterminer la date max c'est ok en faisant une requête avec les champs
> > code valeur et date.
> > Par contre pour la date max -1 je sèche un peu.
> >
> > Quelqu'un a-t-il une idée ?
> >
> > Merci.
> >
> >
> >
> >


Didier Bicking
Le #19201611
Le mieux est d'utiliser les fonctions de calcul par domaine. Pour rechercher
la datemax :
Maxdom("Date";"Matable") (ne pas oublier les guillemets)

C'est un peu plus compliqué pour date-1 :
Maxdom("Date";"Matable";"<Maxdom('Date';'Matable'))

"Talliac" news:
Re bonjour,

Je dispose d'une table à 3 champs :
code valeur
date
cours

c'est une table historique cours valeurs

Je souhaiterais calculer la variation des cours entre la date max et la
date
qui précède cette date max.


Pour déterminer la date max c'est ok en faisant une requête avec les
champs
code valeur et date.
Par contre pour la date max -1 je sèche un peu.

Quelqu'un a-t-il une idée ?

Merci.






Publicité
Poster une réponse
Anonyme