Bonsoir,
Après plusieurs heures à caser ma tête la dessus je me retourne vers vous espérant trouver une solution optimale à mon problème.
Voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $tableau=mysql_query("SELECT id,categorie,section,format FROM ma_table where 1=1 ORDER BY categorie desc, section, format, id desc"); $catPrecedent = "" ; while($datamenu=mysql_fetch_assoc($tableau)) { if ( $datamenu["categorie"] != $catPrecedent ) { echo 'Categorie : '.$datamenu["categorie"].'<br />'; } echo 'Section : '.$datamenu["section"].' - Format : '.$datamenu["format"].' - ID : '.$datamenu["id"].'<br />'; $catPrecedent = $datamenu["section"] ; }
Ce code permet de trier les enregistrements de la table de cette façon :
Catgeorie : A
Section : S1 – Format : F1 – ID : 15
Section : S1 – Format : F1 – ID : 8
Section : S1 – Format : F1 – ID : 7
Section : S1 – Format : F1 – ID : 6
Section : S1 – Format : F1 – ID : 1
Section : S1 – Format : F2 – ID : 2
Section : S1 – Format : F3 – ID : 10
Section : S2 – Format : F1 – ID : 4
Section : S2 – Format : F1 – ID : 11
Section : S2 – Format : F1 – ID : 3
Section : S3 – Format : F2 – ID : 14
Section : S3 – Format : F2 – ID : 13
Section : S3 – Format : F2 – ID : 5
Section : S3 – Format : F3 – ID : 12
Section : S3 – Format : F3 – ID : 9
Catgeorie : B
....................................
Cependant je veux limiter le nombre de lignes qui ont la même section et le même format pour une catégorie donnée à 2 (prendre les lignes dont ID est le plus bas)
Résultat obtenu :
Catgeorie : A
Section : S1 – Format : F1 – ID : 6
Section : S1 – Format : F1 – ID : 1
Section : S1 – Format : F2 – ID : 2
Section : S1 – Format : F3 – ID : 10
Section : S2 – Format : F1 – ID : 11
Section : S2 – Format : F1 – ID : 3
Section : S3 – Format : F2 – ID : 13
Section : S3 – Format : F2 – ID : 5
Section : S3 – Format : F3 – ID : 12
Section : S3 – Format : F3 – ID : 9
Catgeorie : B
................
Merci à vous d’avance pour votre aide.
Partager