Group by having max (date)

Résolu/Fermé
noobsql - Modifié par noobsql le 16/05/2011 à 12:36
 noobsql - 16 mai 2011 à 17:03
Bonjour,

J'ai besoin d'aide pour une requete mysql,

voici un extrait de ma table :


num    date_saisie                          nombre             etc.  
1         2009-05-04 10:35:16          50  
1         2010-02-01 12:11:14          100  
1         2011-01-03 11:35:16          2102  
2         2008-01-04 08:15:53          350000  
2         2009-03-05 10:15:24          1400000  
5         2007-10-22 18:21:06          10  
5         2008-06-14 09:12:15          6   
5         2010-02-02 13:40:33          200  
5         2011-03-01 15:13:26          125  


actuellement, ma requete ne fonctionne pas

select * from maTable group by num having max(date_saisie) order by num  


le résultat devrait être :
1         2011-01-03 11:35:16          2102  
2         2009-03-05 10:15:24          1400000  
5         2011-03-01 15:13:26          125  




soyez indulgent car je débute ;)
A voir également:

1 réponse

je me réponds ... la requête met trop de temps avec plus de 4000 enregistrement.
mais ça fonctionne ...
SELECT *
FROM maTable T
WHERE T.date_saisie = (
SELECT MAX( M.date_saisie )
FROM maTable M
WHERE T.num = M.num ) 
2