choklata Posté 23 Mars 2006 Posté 23 Mars 2006 j'ai une table comme suit : nom prenom an yy gg 2001 ff ss 2002 qq hh 2003 kk ii 2004 je veux extraire les 3 records (des années 2004,2003,2002) mais s'il n'y a pas il j'extrait les 2 dernier s'il n'y a pas "le dernier" suffit il ya t-il une requête ou un traitement php pour le faire?
Dan Posté 23 Mars 2006 Posté 23 Mars 2006 Select * from nom_de_table where an between '2002' and '2004' tout simplement
ouarzazat Posté 5 Avril 2006 Posté 5 Avril 2006 (modifié) Essaie avec order et limit: Select * FROM nom_de_table ORDER BY an DESC LIMIT 0,2 (ou 1,3 je sais plus) ORDER BY an DESC va trier tes résultats par rapports à l'année dans l'ordre décroissant (DESC), du + grand au + petit. LIMIT 0,2 retiendra dans cette liste les enregistrement 0 à 2 (=3 enregistrements). Et puis si tu n'as que 2 ou 1 seul enregistrement ben il ne t'en retiendra que 2 ou un seul! J'espère que c'est ce à quoi tu t'attendais, à+ Modifié 5 Avril 2006 par ouarzazat
webadev Posté 22 Avril 2006 Posté 22 Avril 2006 Select * FROM nom_de_table ORDER BY an DESC LIMIT X X = le nombre maximum que tu veux si tu fais un LIMIT 3 Il te donnera au maximun 3 enregistrements (si ta table n'en contient que 2 il t'en donnera 2 ....) Hervé
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant