Bonjour, j'ai 4 tables.
1 table REVUES,1 table NUMEROS,1 table PERSONNES et une table des PRETS
-composition des tables :
REVUES : ID_revue,nom_revue
NUMEROS : ID_numero,id_revue,date_numero,statut_numero
PRETS : ID_pret,id_numero,id_pers,date_pret
PERSONNES : id_pers,nom,prenom,..
chaque revue peut avoir plusieurs numeros et chaque numero peut etre preté à une personne. pour avoir un historique on garde la liste des prets.Donc à chaque fois qu'une personne emprunte une revue effectue un nouvel enregistrement dans la table des prets.
Ce que je voudrai c'est pouvoir sortir pour chaque revue, avoir la liste de tous ses numeros,avec en face le nom de la personne qui est sensé l'avoir actuellment, la date de son pret,et le statut du numero (detruit,en pret,reçu,etc...)
Pour avoir le dernier enregistrement de pret j'avais pensé faire un MAX(date_pret) mais je n'arrive pas à avoir 1 seule ligne pour chaque numero. A cause du group by il m'en met beaucoup plus.
Voici ma requete pour le moment :
Code :
- SELECT l.id_num_revue,MAX(l.date_pret)
- FROM NUMEROS n,liste_des_prets l,personne p
- WHERE n.id_num_revue = l.id_num_revue
- AND l.id_pers = p.id_pers
- GROUP BY l.id_num_revue
|
la j'ai la derniere date de pret avec l'id de la revue, mais comment avoir le nom et le statut qui vont avec ?