Bonjour,
les deux enregistrements ne se suivent pas forcément.
la différence cherchée est égale :
au kilométrage actuel
moins
le kilométrage maxi trouvé dans la table
pour lequel
le numéro de série de la table
est égal
au numéro de série actuel
et
la date de visite trouvée dans la table
est strictement inférieure
à la date actuelle.
la fonction à utiliser est donc DMax("kilométrage","latable",critères)
critères pas évident à écrire à la volée car double critère et format
numéro de série inconnu
(texte ou numérique)
--
à+
Arnaud
--------------------------------------------------
*Avant toute chose* : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
SODB :
| Bonjour,
| Etant débutant en access je souhaite trouver une solution pour le
| problème suivant. Soit un table contenant 3 champs. 1 champ
| "numérodesérie" 1champ "Kilométrage" et un champ "date".
| L'utilisation est la suivante : chaque fois qu'un véhicule passe au
| garage on note dans la table le numéro de série, le kilométrage et la
| date. J'aimerais avoir une requete qui me donne pour chaque numéro de
| série la différence en kilomètres entre chaque passage au garage.
| Simple, non ? Moi je ne trouve pas comment soustraire deux valeurs de
| deux enregistrements qui se suivent.....
| Merci pour la solution
| Serge
Bonjour,
les deux enregistrements ne se suivent pas forcément.
la différence cherchée est égale :
au kilométrage actuel
moins
le kilométrage maxi trouvé dans la table
pour lequel
le numéro de série de la table
est égal
au numéro de série actuel
et
la date de visite trouvée dans la table
est strictement inférieure
à la date actuelle.
la fonction à utiliser est donc DMax("kilométrage","latable",critères)
critères pas évident à écrire à la volée car double critère et format
numéro de série inconnu
(texte ou numérique)
--
à+
Arnaud
--------------------------------------------------
*Avant toute chose* : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
SODB <sodb@skynet.be> :
| Bonjour,
| Etant débutant en access je souhaite trouver une solution pour le
| problème suivant. Soit un table contenant 3 champs. 1 champ
| "numérodesérie" 1champ "Kilométrage" et un champ "date".
| L'utilisation est la suivante : chaque fois qu'un véhicule passe au
| garage on note dans la table le numéro de série, le kilométrage et la
| date. J'aimerais avoir une requete qui me donne pour chaque numéro de
| série la différence en kilomètres entre chaque passage au garage.
| Simple, non ? Moi je ne trouve pas comment soustraire deux valeurs de
| deux enregistrements qui se suivent.....
| Merci pour la solution
| Serge
Bonjour,
les deux enregistrements ne se suivent pas forcément.
la différence cherchée est égale :
au kilométrage actuel
moins
le kilométrage maxi trouvé dans la table
pour lequel
le numéro de série de la table
est égal
au numéro de série actuel
et
la date de visite trouvée dans la table
est strictement inférieure
à la date actuelle.
la fonction à utiliser est donc DMax("kilométrage","latable",critères)
critères pas évident à écrire à la volée car double critère et format
numéro de série inconnu
(texte ou numérique)
--
à+
Arnaud
--------------------------------------------------
*Avant toute chose* : http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
/Réponses souhaitées sur ce forum, merci/
--------------------------------------------------
SODB :
| Bonjour,
| Etant débutant en access je souhaite trouver une solution pour le
| problème suivant. Soit un table contenant 3 champs. 1 champ
| "numérodesérie" 1champ "Kilométrage" et un champ "date".
| L'utilisation est la suivante : chaque fois qu'un véhicule passe au
| garage on note dans la table le numéro de série, le kilométrage et la
| date. J'aimerais avoir une requete qui me donne pour chaque numéro de
| série la différence en kilomètres entre chaque passage au garage.
| Simple, non ? Moi je ne trouve pas comment soustraire deux valeurs de
| deux enregistrements qui se suivent.....
| Merci pour la solution
| Serge
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie" 1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ? Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie" 1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ? Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie" 1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ? Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
quise suivent.....
Merci pour la solution
Serge
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff2f804$0$2445$ba620e4c@news.skynet.be...
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moi
je ne trouve pas comment soustraire deux valeurs de deux enregistrements
quise suivent.....
Merci pour la solution
Serge
Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
---
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garageon note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série
la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrements
quise suivent.....
Merci pour la solution
Serge
Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" <mhms@club-internet.fr> a écrit dans le message de
news:ur$%23XG$zDHA.1996@TK2MSFTNGP12.phx.gbl...
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff2f804$0$2445$ba620e4c@news.skynet.be...
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série
la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moi
je ne trouve pas comment soustraire deux valeurs de deux
enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
---
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garageon note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de série
la
différence en kilomètres entre chaque passage au garage. Simple, non ?
Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrements
quise suivent.....
Merci pour la solution
Serge
Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff422a7$0$2444$Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
-----------------------------------------------------------------------------
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garageon note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
série
ladifférence en kilomètres entre chaque passage au garage. Simple, non
?
Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrementsquise suivent.....
Merci pour la solution
Serge
Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff422a7$0$2444$ba620e4c@news.skynet.be...
Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" <mhms@club-internet.fr> a écrit dans le message de
news:ur$%23XG$zDHA.1996@TK2MSFTNGP12.phx.gbl...
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff2f804$0$2445$ba620e4c@news.skynet.be...
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garage
on note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
série
la
différence en kilomètres entre chaque passage au garage. Simple, non
?
Moi
je ne trouve pas comment soustraire deux valeurs de deux
enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff422a7$0$2444$Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens la
différence entre un enregistrement et le précédent. J'aimerais avoir la
différence entre un enregistrement et le suivant, et si il n'y a pas de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
-----------------------------------------------------------------------------
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe au
garageon note dans la table le numéro de série, le kilométrage et la date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
série
ladifférence en kilomètres entre chaque passage au garage. Simple, non
?
Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrementsquise suivent.....
Merci pour la solution
Serge
Merci Maxence,
C'est presque ça, seulement j'obtiens des valeurs négatives et je n'ai pas
la valeur zéro lorsqu'il n'y a plus d'enregistrement qui suit. Mais cette
fois j'ai fait un effort. Voici ce que j'ai fait et j'obtiens le résultat
escompté:
SELECT T1.LeNum, T1.LeKm, T1.LaDate, nz((SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),leKM)-LeKM AS LaDiff
FROM LaTable AS T1;
Encore une petite question : que signifie le "nz" ?
Encore mille merci et meilleurs voeux pour 2004.
Serge
"Maxence HUBICHE" a écrit dans le message de
news:Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
---
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff422a7$0$2444$Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens
la
différence entre un enregistrement et le précédent. J'aimerais avoir
la
différence entre un enregistrement et le suivant, et si il n'y a pas
de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
quielle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
-----------------------------------------------------------------------------
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe
au
garageon note dans la table le numéro de série, le kilométrage et la
date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
sérieladifférence en kilomètres entre chaque passage au garage. Simple,
non
?Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrementsquise suivent.....
Merci pour la solution
Serge
Merci Maxence,
C'est presque ça, seulement j'obtiens des valeurs négatives et je n'ai pas
la valeur zéro lorsqu'il n'y a plus d'enregistrement qui suit. Mais cette
fois j'ai fait un effort. Voici ce que j'ai fait et j'obtiens le résultat
escompté:
SELECT T1.LeNum, T1.LeKm, T1.LaDate, nz((SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),leKM)-LeKM AS LaDiff
FROM LaTable AS T1;
Encore une petite question : que signifie le "nz" ?
Encore mille merci et meilleurs voeux pour 2004.
Serge
"Maxence HUBICHE" <mhms@club-internet.fr> a écrit dans le message de
news:e5JebjG0DHA.1740@TK2MSFTNGP12.phx.gbl...
Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff422a7$0$2444$ba620e4c@news.skynet.be...
Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens
la
différence entre un enregistrement et le précédent. J'aimerais avoir
la
différence entre un enregistrement et le suivant, et si il n'y a pas
de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" <mhms@club-internet.fr> a écrit dans le message de
news:ur$%23XG$zDHA.1996@TK2MSFTNGP12.phx.gbl...
Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
qui
elle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
--------------------------------------------------------------------------
--
-
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" <sodb@skynet.be> a écrit dans le message de news:
3ff2f804$0$2445$ba620e4c@news.skynet.be...
Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problème
suivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ
"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe
au
garage
on note dans la table le numéro de série, le kilométrage et la
date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
série
la
différence en kilomètres entre chaque passage au garage. Simple,
non
?
Moi
je ne trouve pas comment soustraire deux valeurs de deux
enregistrements
qui
se suivent.....
Merci pour la solution
Serge
Merci Maxence,
C'est presque ça, seulement j'obtiens des valeurs négatives et je n'ai pas
la valeur zéro lorsqu'il n'y a plus d'enregistrement qui suit. Mais cette
fois j'ai fait un effort. Voici ce que j'ai fait et j'obtiens le résultat
escompté:
SELECT T1.LeNum, T1.LeKm, T1.LaDate, nz((SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),leKM)-LeKM AS LaDiff
FROM LaTable AS T1;
Encore une petite question : que signifie le "nz" ?
Encore mille merci et meilleurs voeux pour 2004.
Serge
"Maxence HUBICHE" a écrit dans le message de
news:Ben là, tu aurais pu faire un petit effort quand même !!!
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Min(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate>T1.LaDate),0) As LaDiff
FROM LaTable T1
Il fallait changer le signe< en > et le max en Min.
--
--------------------------------------------------------------------------
---
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff422a7$0$2444$Merci beaucoup, cela fonctionne mais pas dans le bon sens. J'obtiens
la
différence entre un enregistrement et le précédent. J'aimerais avoir
la
différence entre un enregistrement et le suivant, et si il n'y a pas
de
suivant je désire la valeur zéro.
merci encore pour l'aide future
Serge
"Maxence HUBICHE" a écrit dans le message de
news:ur$%23XG$Bonsoir,
tu dois faire une requête correllée.
J'en ai souvent parlé sur developpez.com
C'est une requête qui, pour s'exécuter a besoin d'une autre requête
quielle-même a besoin de la première.
Pour les exécuter, tu auras besoin de passer par des alias de table.
Essaie ceci, dans le cas où ta table est la suivante :
CREATE TABLE LaTable (LaDate Date, LeNum Int, LeKM Long)
SELECT LaDate, LeNum, LeKM, LeKM - nz((
SELECT Max(LeKM)
FROM LaTable T2
WHERE T2.LeNum=T1.LeNum AND T2.LaDate<T1.LaDate),0) As LaDiff
FROM LaTable T1
Et dis-nous si tu es parvenu à faire ce que tu attendais :)
--
-----------------------------------------------------------------------------
Maxence HUBICHE
Formateur et développeur indépendant
Modérateur/rédacteur sur http://www.developpez.com
"SODB" a écrit dans le message de news:
3ff2f804$0$2445$Bonjour,
Etant débutant en access je souhaite trouver une solution pour le
problèmesuivant. Soit un table contenant 3 champs. 1 champ "numérodesérie"
1champ"Kilométrage" et un champ "date".
L'utilisation est la suivante : chaque fois qu'un véhicule passe
au
garageon note dans la table le numéro de série, le kilométrage et la
date.
J'aimerais avoir une requete qui me donne pour chaque numéro de
sérieladifférence en kilomètres entre chaque passage au garage. Simple,
non
?Moije ne trouve pas comment soustraire deux valeurs de deux
enregistrementsquise suivent.....
Merci pour la solution
Serge