Comment afficher la dernière entrée pour un champ
Résolu
Apprenti
-
Pseudo... -
Pseudo... -
Bonjour,
J'ai une base de donnée pour gérer le mouvent de bennes.
Dans cette table j'ai un champs avec un numéro automatique, une date, le numéro de la benne en question, le lieu ou elle se trouve.
par exemple j'ai la benne 1,2,3,4 qui sont au dépôt depuis longtemps et la benne 5 est parti chez un client.
de ce fait j'ai deux enregistrement pour la benne 5 le premier qui indique qu'elle est au dépôt et un autre avec une date différente pour dire qu'elle est chez le client.
J'aimerais faire une requête qui affiche uniquement le dernière enregistrement pour chaque benne sans compter sur le champ date.
Je sais pas si c'est très clair ^^
Merci pour votre aide.
J'ai une base de donnée pour gérer le mouvent de bennes.
Dans cette table j'ai un champs avec un numéro automatique, une date, le numéro de la benne en question, le lieu ou elle se trouve.
par exemple j'ai la benne 1,2,3,4 qui sont au dépôt depuis longtemps et la benne 5 est parti chez un client.
de ce fait j'ai deux enregistrement pour la benne 5 le premier qui indique qu'elle est au dépôt et un autre avec une date différente pour dire qu'elle est chez le client.
J'aimerais faire une requête qui affiche uniquement le dernière enregistrement pour chaque benne sans compter sur le champ date.
Je sais pas si c'est très clair ^^
Merci pour votre aide.
A voir également:
- Comment afficher la dernière entrée pour un champ
- Dernière version ccleaner gratuit français - Télécharger - Nettoyage
- Supprimer dernière page word - Guide
- Dernière version chrome - Accueil - Applications & Logiciels
- Afficher appdata - Guide
- Afficher taille dossier windows - Guide
1 réponse
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
tu es peu clair: tu commences un exemple, et puis tu arrêtes avant d'avoir été plus précis. "sans compter sur le champ date", cela signifie quoi? c'est quoi "le dernier enregistrement"? celui qui a la date la plus récente, celui qui a le numéro automatique le plus grand?
moi je ferais ainsi:
tu es peu clair: tu commences un exemple, et puis tu arrêtes avant d'avoir été plus précis. "sans compter sur le champ date", cela signifie quoi? c'est quoi "le dernier enregistrement"? celui qui a la date la plus récente, celui qui a le numéro automatique le plus grand?
moi je ferais ainsi:
select t1.* from table as t1, (select num, max(dt) as mdt from table group by num) as t2 where t1.num = t2.num and t1.dt=t2.mdt
Merci pour ta réponse
Par contre je touche pas trop au SQL mes compétences dans ce domaine sont très limité.
Quand je dit de pas prendre en compte le champ "date" c'est pour ne pas faire une séléction par apport a ce champ car le résultat que je veux afficher peux avoir des lignes (enregistrement) d'hier comme des lignes d'il y a un an par exemple. (je ne veux pas demander à ACCESS de m'afficher toutes les lignes à partir d'une date donnée)
Le dernier enregistrement c'est la date la plus recente.
Ce que je veux afficher c'est la ligne avec la date la plus récente pour chaque benne
Par exemple la benne 1 est au dépot depuis le 01/01/2017 et elle n'a pas bouger depuis
La benne 2 était au dépôt le 01/01/2017 mais entre temps elle est partie chez un client par exemple le 01/06/2017
Dans ce cas j'aimerais afficher les lignes suivantes :
01/01/2017 > benne 1 > dépôt
01/06/2017 > benne 2 > nom du client
Je ne veux pas voir la ligne 01/01/2017 pour la benne 2 car il y a eu un mouvement sur cette benne entre temps
J'éspère être plus clair.
Je comprend pas beaucoup le SQL il faudrais m'expliquer à quoi ça correspond