Bonjour,
j'essaie de faire une requete en une seule fois mais je n'y parviens pas, il s'agit d'une requete sur des cotisants, je voudrai récupérer la date de fin de derniere cotisation d'une personne comprise entre aujourd'hui et une date antérieure
pour les essais, j'ai fixé la date à un mois
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 table cot_cotisation cot_id clé primaire etu_id -> identifiant d'une personne cot_dateCotisation cot_dateDebutCotisation -> date de début de la cotisation cot_dateFinCotisation -> date de fin
dans mon esprit la requete ressemblerait à celle du dessous mais le problème c'est qu'elle me sort les date de fin de cotisation qui ne sont pas les dernieres effectuées par la personne exemple (4 50002 2006-07-18) que j'ai mis en rouge au dessus
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 cot_id etu_id cot_dateFinCotisation 1 50002 2003-07-15 2 50002 2004-07-16 3 50002 2005-07-17 4 50002 2006-07-18 5 50002 2007-07-19 6 50003 2001-09-05 7 50003 2002-09-06 8 50003 2003-09-07 9 50003 2004-09-08
je voulais donc savoir si c'etait possible en une seule requete ou s il fallait utiliser les sous requetes que je ne maitrise pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT etu_id, max( cot_dateFinCotisation ) FROM `cot_cotisation` WHERE cot_dateFinCotisation < '2006-08-02' AND cot_dateFinCotisation > '2006-07-02' GROUP BY etu_id
Partager