{Access} Premier enregistrement d'une ip

Résolu/Fermé
le__nono Messages postés 2 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 3 août 2009 - 30 juil. 2009 à 12:19
le__nono Messages postés 2 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 3 août 2009 - 3 août 2009 à 10:21
Bonjour, je travail en ce moment sur un bdd access et une requête me pose bien des problèmes

J'ai une table qui se compose de la manière suivante :

ip / date / valeur

192.168.0.1 / date1 / valeur1
192.168.0.1 / date2 / valeur2
192.168.0.2 / date3 / valeur3
....


Le but de la requête est de retrouver pour chaque adresse ip la première valeur enregistrer en fonction de la date

En reprenant l'exemple j'aimerais obtenir

192.168.0.1 -> valeur1
192.168.0.2 -> valeur3

Donc le but de la manœuvre est de :
- faire la liste des ip
- pour chaque ip, trier en fonction de la date les valeurs (de plus vieux au plus récents)
- prendre la valeur la plus ancienne


Et voilà en l'expliquant ça n'a pas l'air 'trop complexe' mais avec mes connaissance en requête je suis tel une poule devant un canif....

En cherchant sur le forum, je suis tombé sur sujet qui ressemble à ma problématique, mais je n'arrive pas à le mettre en application...

https://forums.commentcamarche.net/forum/affich-12042992-sql-sortir-une-ligne-par-identifiants

J'espère que quelqu'un pourra m'aiguiller un peu

2 réponses

Christounet Messages postés 1264 Date d'inscription mercredi 26 septembre 2007 Statut Membre Dernière intervention 29 juillet 2010 1 389
30 juil. 2009 à 16:47
Bonjour,

Je pense que le code suivant devrait faire ce que tu veux
SELECT * FROM TaTable AS T1
WHERE T1.date = (SELECT MIN(T2.date) From TaTable As T2 WHERE T2.IP = T1.IP)

A plus
1
le__nono Messages postés 2 Date d'inscription jeudi 30 juillet 2009 Statut Membre Dernière intervention 3 août 2009
3 août 2009 à 10:21
Merci beaucoup pour ton aide, c'est exactement ce qu'il me fallait !
0