Google Groupes n'accepte plus les nouveaux posts ni abonnements Usenet. Les contenus de l'historique resteront visibles.

calcul sur la derniere ligne

115 vues
Accéder directement au premier message non lu

Géo

non lue,
5 déc. 2004, 10:19:3705/12/2004
à
Bonjour,

j'ai un petit probleme, surement pas grand chose mais ...

dans une base j'ai :

Date compteur
1.11.2004 10
2.11.2004 12
3.11.2004 18
4.11.2004 25
etc ....

comment trouver par SQL la difference :
Date compteur difference
1.11.2004 10 10
2.11.2004 12 2
3.11.2004 18 6
4.11.2004 25 7
etc ....

Le premier compteur n'est pas trop important je peux le gerer autrement
si cela pose probleme de ne pas avoir de date avant le 1.11.2004, par
contre le joint entre les mois doit etre fait :

31.12.2004 20 4
1.1.2005 25 5

Vous avez une idee ?

Amicalement

Géo

Raymond [mvp]

non lue,
5 déc. 2004, 13:44:2105/12/2004
à
Bonsoir.

à mon avis, le plus simple serait de passer par un fonction public que tu
appelles à chaque enregistrement en passant la date en paramètres; la
fonction faisaint la différence des jours et renvoyant le nombre de jours
écoulés.

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Géo" <nob...@isperfect.coh> a écrit dans le message de news:
41B32709...@isperfect.coh...

3stone

non lue,
5 déc. 2004, 17:45:3905/12/2004
à
Salut,

"Géo"


> dans une base j'ai :
>
> Date compteur
> 1.11.2004 10
> 2.11.2004 12
> 3.11.2004 18
> 4.11.2004 25
> etc ....
>
> comment trouver par SQL la difference :
> Date compteur difference
> 1.11.2004 10 10
> 2.11.2004 12 2
> 3.11.2004 18 6
> 4.11.2004 25 7
> etc ....


SELECT LaDate,
Compteur,
[Compteur]-Nz(DMax("Compteur","LaTable","[Compteur]<" & [Compteur]),0) AS Diff

FROM LaTable

ORDER BY LaDate;


que tu peux saisir directement comme code SQL.

--
A+
Pierre (3stone) Access MVP
~~~~~~~~~~~~~~~~~~~~~~~
http://users.skynet.be/mpfa
http://users.skynet.be/accesshome

bjf

non lue,
6 déc. 2004, 02:37:1006/12/2004
à
Salut 3stones
Juste une question. Que se passe-t-il si compteur a les
valeurs suivantes:
12
18
25
20
23
..
etc
donc pas forcément en ordre croissant?
a+
BJF

>-----Message d'origine-----

>.
>

Géo

non lue,
6 déc. 2004, 05:32:4806/12/2004
à
bjf a écrit:

> Salut 3stones
> Juste une question. Que se passe-t-il si compteur a les
> valeurs suivantes:
> 12
> 18
> 25
> 20
> 23
> ..
> etc
> donc pas forcément en ordre croissant?
> a+
> BJF
>
>
>>-----Message d'origine-----
>>Salut,

Bon , ce n'est pas trop grave, par definition un compteur s'incremente
toujours ...

Par contre (c'est compteur manuel) il revient a 0 apres un tour
complet. Mais ça je le gere au moment de l'insertion des valeurs.

je vais tester le code de 3Stone ... ça se prononce comment ? :-)

merci !

Géo


3stone

non lue,
6 déc. 2004, 08:13:1206/12/2004
à
Salut,

"bjf"


Juste une question. Que se passe-t-il si compteur a les
valeurs suivantes:
12
18
25
20
23
..
etc
donc pas forcément en ordre croissant?

-------------------------------------------------


Et cela donnerait des résultats négatifs ?

Mais, dans le "DMax" tu peux également utiliser une clause "Where"
sur la date au lieu de la mettre sur le [compteur]...

Ce qui ferait:

SELECT LaDate,
Compteur,
[Compteur]-Nz(DMax("[Compteur]","LaTable","[LaDate]<" &
Format([LaDate],"\#mm-dd-yyyy\#")),0) AS Diff

FROM LaTable

ORDER BY LaTable.LaDate;

mais dans ce cas, ce sont les dates qui doivent être "unique"... (pas de doublons)
Si tel n'est pas le cas, il manque un "NumAuto" dans la table pour "trier" dessus!


Cependant, vu la progression des valeurs données par Géo
la solution proposée précédemment convient.

bjf

non lue,
6 déc. 2004, 09:40:5106/12/2004
à
Re 3stones
Cette deuxième version me plaît beaucoup plus que la
première car elle calcule l'écart de valeur par rapport à
la valeur précédente et non plus par rapport à la valeur
la plus grande de la table.
Dans tous les cas merci pour cette réponse car c'est un
problème que j'avais à résoudre!!!
BJF

>-----Message d'origine-----


>Salut,
>
>"bjf"
>Juste une question. Que se passe-t-il si compteur a les
>valeurs suivantes:
>12
>18
>25
>20
>23

>...

>.
>

Géo

non lue,
6 déc. 2004, 16:16:4006/12/2004
à
que dire d'autre que ... merci beaucoup !!

Géo

0 nouveau message