Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/01/2012, 12h11   #1
Invité de passage
 
Inscription : janvier 2012
Messages : 9
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 9
Points : 0
Points : 0
Par défaut Calculer une différence entre 2 enregistrements

Bonjour,

Je me suis mis à Access (2003) il y a un mois, et j'ai un problème que je n'arrive pas à résoudre.

J'ai une table avec plusieurs champs :
N° Dépot ; N° Ouvrage ; Quantité

qui correspond à la quantité de livres que j'ai laissé en dépot.

Je souhaite créer une requète qui, pour un ouvrage sélectionné, m'en affiche la liste des dépots (jusqu'ici, je m'en sors), mais surtout me créé un nouveau champ "Évolution" en me calculant la différence avec la champ précédent.

Exemple :
N° Dépot - Quantité - Évolution
1 5 0
2 4 -1
3 6 +2

Quelqu'un pourrait-il m'aider ?

Merci par avance...
yannaka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2012, 14h40   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 756
Points : 1 756
Bonjour,
La requête peut ressembler à ça
Code sql :
1
2
3
SELECT Depot_1.[N° depot] AS Numéro, Depot.[N° depot] AS Quantité, [Depot_1]![quantité]-[Depot]![quantité] AS Evolution 
FROM Depot, Depot AS Depot_1 
WHERE (((Depot.[N° depot])=[Depot_1]![N° Depot]-1));
J'ai ici nommé la table Depot.
helas est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 27/01/2012, 15h28   #3
Invité de passage
 
Inscription : janvier 2012
Messages : 9
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 9
Points : 0
Points : 0
La requête marche impeccable. Merci beaucoup.

Mon problème, c'est que je ne comprends pas vraiment ce que tu as fait (oui, j'suis un peu un boulet, désolé).
Sans vouloir abuser, tu pourrais pas m'expliquer les différentes étapes...
Merci...
yannaka est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2012, 18h50   #4
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 756
Points : 1 756
Bonsoir,
Pour créer cette requête il faut utiliser 2 fois la même table d'ou Depot et Depot_1
SELECT sélectionne les champs à afficher
FROM champs des tables citées ici
WHERE (((Depot.[N° depot])=[Depot_1]![N° Depot]-1)) est la condition de la sélection qui va lier un enregistrement à l'enregistrement précédent de la même table
Les champs et opérations sont sélectionnés dans la même table mais sur des enregistrements successifs.
Est-ce clair ?
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/02/2012, 12h19   #5
Invité de passage
 
Inscription : janvier 2012
Messages : 9
Détails du profil
Informations forums :
Inscription : janvier 2012
Messages : 9
Points : 0
Points : 0
Je réponds un peu tard, mais merci beaucoup pour ton aide !
yannaka est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h54.


 
 
 
 
Partenaires

Hébergement Web