|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Med Ali MezianeInscription : juillet 2006 Messages : 40 ![]() |
Bonsoir tout le monde,
Je développe un petit programme en Delphi 7 avec une BDD Interbase et qui tourne sur 4 PCs en réseau local. J'aime bien savoir comment récupérer les N derniers enregistrement d'une table Matable avec les champs Id, Nom, DateNaissance, Note. J'ai beau consulté une large documentation, j'ai essayé pas mal d'exemples finalement je me trouve perdu J'attend vos réponses avec impatience et merci d'avance |
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() ![]() Pierre Ingénieur qualité méthodes Inscription : mars 2003 Messages : 3 726 ![]() |
Ta demande est un peu ambigue
![]() En effet, la notion de rang/classement n'existe pas sur un SGBD, SAUF si on dit sur quel critère on souhaite se baser... Dans ton cas, est-ce l'ID ? le nom ? la date de naissance ? autre chose ?
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet) ----------------------- Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MPUsus magister est optimus |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Med Ali MezianeInscription : juillet 2006 Messages : 40 ![]() |
D'abord, Merci infinément de votre réponse.
En fait, MaTable possède un champs ID autoincrémentable avec un Générateur et un Trigger et puisque l'utilisateur ne peut pas voir le ID du nouvel enregistrement directement après la validation de la création j'ai voulu que les 10 derniers enregistrements créés s'affiche dans une grille (afin qu'il note sur ses dossiers en papier) le ID de la nouvelle fiche (10 parceque d'autres utilisateurs peuvent créer d'autres enregistrement entre temps). J'ai essayé LIMIT , TOP ,... mais ça ne fonctionne pas. Dans mes recherches multiples dans les forums de www.developpez.com, j'ai trouvé cette portion de code dans une réponse similaire, que j'aime bien avoir votre avis la dessus: SELECT a.ID, a.Nom, a.DateNaissance FROM MaTable a LEFT OUTER JOIN MaTable b ON b.ID > a.ID GROUP BY a.ID HAVING count(b.ID)>=10 Est-ce qu'on peut faire mieux avec interbase ? |
|
|
00
|
|
|
#4 | ||||
![]() ![]() Claude RenouleaudDéveloppeur informatique Inscription : février 2006 Messages : 4 758 ![]() |
Salut
Essaye ceci: Par exemple: les 5 plus vieux Code :
Code :
[/edit] @+ Claudius
__________________
A la question technique que par MP/MV tu formuleras, la réponse aux oubliettes finira. |
||||
|
|
00
|
|
|
#5 | ||
|
Membre éclairé
![]() Développeur informatique Inscription : octobre 2006 Messages : 435 ![]() |
Je ne sais pas si c'est utilisable sous Interbase mais avec Firebird ça marche :
Code :
__________________
Si vous êtes libre, choisissez le Logiciel Libre. |
||
|
|
00
|
|
|
#6 | ||
|
Futur Membre du Club
![]() Med Ali MezianeInscription : juillet 2006 Messages : 40 ![]() |
Eh ben là CHAPEAU, effectivement c'était ce fameu ROWS qui manquait.Effectivement, en mettant un ORDER BY avec DESC et ROWS 5 j'ai pu afficher les 5 derniers enregistrements de MaTable. En voici la requête complète: Code :
Merci pour TOUS des conseils ![]() Bonne continuation |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com