Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
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 12/01/2011, 10h11   #1
Débutant
 
Inscription : octobre 2004
Messages : 432
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 432
Points : 93
Points : 93
Par défaut Dernier enregistrement requête

Bonjour,

Ma requête doit reprendre tous les derniers enregistrements par client ("customernumber). J'aimerais uniquement avoir dans le résultat de ma requête le dernier enregistrement en fonction du champ "Datetoday" :

Code :
1
2
3
SELECT tbl_listarrears.ID, tbl_listarrears.Customernumber, tbl_listarrears.Name, tbl_listarrears.Contract, tbl_phonecalls.Datetoday, tbl_phonecalls.Comment
FROM tbl_listarrears INNER JOIN tbl_phonecalls ON tbl_listarrears.Customernumber = tbl_phonecalls.Customer
ORDER BY tbl_listarrears.Name, tbl_listarrears.Contract;
Je pense qu'il faut utiliser la fonction MAX mais je n'y arrive pas.

Pourriez-vous m'aider svp ? Merci
lucas-18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2011, 19h31   #2
Débutant
 
Inscription : octobre 2004
Messages : 432
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 432
Points : 93
Points : 93
J'ai enfin trouvé !

Code :
SELECT Max(tbl_phonecalls.Datetoday) AS MaxOfDatetoday, Last(tbl_phonecalls.Comment) AS LastOfComment
Par contre, j'ai un problème.
J'ai une liaison :
Ma table1 comprend tous les contrats d'un même client. Un même client peut donc avoir plusieurs lignes.
Ma table2 comprend les appels téléphoniques passés avec ces clients mais lorsqu'il n'existe pas encore d'appels téléphoniques, ma requête ne reprend pas les contrats de ma table1

Dois-je mettre un critère dans ma requête sur les champs Datetoday et Comment ????
lucas-18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2011, 11h05   #3
Débutant
 
Inscription : octobre 2004
Messages : 432
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 432
Points : 93
Points : 93
J'ai encore réessayé et le problème, c'est que pour certains records, il ne me donne pas le dernier champ "Comment" ; par contre il me donne bien les derniers champs "Datetoday" et "Datenextcall".

Pourriez-vous m'aider en vérifiant ma query en pièce jointe svp ???
Images attachées
Type de fichier : jpg Query.JPG (109,8 Ko, 3 affichages)
Type de fichier : jpg Query SQL.JPG (73,6 Ko, 0 affichages)
lucas-18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2011, 17h14   #4
Membre habitué
 
Inscription : janvier 2006
Messages : 99
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2006
Messages : 99
Points : 101
Points : 101
Citation:
Envoyé par lucas-18 Voir le message
J'ai enfin trouvé !

Code :
SELECT Max(tbl_phonecalls.Datetoday) AS MaxOfDatetoday, Last(tbl_phonecalls.Comment) AS LastOfComment
Par contre, j'ai un problème.
J'ai une liaison :
Ma table1 comprend tous les contrats d'un même client. Un même client peut donc avoir plusieurs lignes.
Ma table2 comprend les appels téléphoniques passés avec ces clients mais lorsqu'il n'existe pas encore d'appels téléphoniques, ma requête ne reprend pas les contrats de ma table1

Dois-je mettre un critère dans ma requête sur les champs Datetoday et Comment ????
Bonjour,

la solution à ton problème est une jointure droite qui te permet de prendre tous les enregistrements d'une table, y compris ceux qui n'ont pas de relation dans la seconde table.
Je te conseille la lecture de http://mhubiche.developpez.com/Access/tutoJointures/, notamment le point 3.6.
Aegnor est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2011, 17h48   #5
Débutant
 
Inscription : octobre 2004
Messages : 432
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 432
Points : 93
Points : 93
Citation:
Envoyé par Aegnor Voir le message
Bonjour,

la solution à ton problème est une jointure droite qui te permet de prendre tous les enregistrements d'une table, y compris ceux qui n'ont pas de relation dans la seconde table.
Je te conseille la lecture de http://mhubiche.developpez.com/Access/tutoJointures/, notamment le point 3.6.
J'avais déjà une jointre droite (LEFT JOIN).
Mes 2 champs date avec la fonction MAX reprennent bien les dates les + récentes du client en question par contre le champ Commentaire reprend des fois le plus récent, des fois l'avant dernier etc ...
lucas-18 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h55.


 
 
 
 
Partenaires

Hébergement Web