|
|
|
|
Bonjour,
Je souhaiterai afficher un ensemble de ligne extraite d'une table en les regroupant par date, dans ce style :
Date1 : - ligne1
- ligne2
Date2 : - ligne3
- ligne4
- ligne5
etc...
J'arrive bien a selectionner les lignes, je souhaiterai juste eviter lors de l'affichage une répétition de la date lorsque j'ai plusieurs lignes ayant la meme date, cad ne pas avoir un truc comme ca :
Date1 : - ligne1
Date1 : - ligne2
Date2 : - ligne3
Date2 : - ligne4
Date2 : - ligne5
Merci d'avance !!
Répondre à croy
|
Sans le distinct j'ai des mesures qui apparaissent plusieurs fois le meme jour.... Une meme mesure peut apparaitre sur plusieurs jours d'affilés (et c'est normal), mais une meme mesure plusieurs fois le meme jour ca c'est louche.
|
Si je comprends bien ton pb, tu dois utiliser une requête comme :
SELECT date AS "DatePlanif", idMesure AS "Mesure", typeOperation AS "Type", techno AS "Technologie", protocole AS "Protocole", client AS "Client", etat, commentaire FROM Mesure, Planifie, TypeMesure, Estdetype WHERE Planifie.Mesure_idMesure = Mesure.idMesure AND Mesure.idMesure = Estdetype.Mesure_idMesure AND TypeMesure.idTypeMesure = Estdetype.TypeMesure_idTypeMesure AND YEAR(Planifie.date) = '.$da.' AND MONTH(Planifie.date) = '.$noMois.'+1 AND (Mesure.etat = "plan" OR Mesure.etat = "fait") ORDER BY Planifie.date ASC Ni DISTINCT ni GROUP BY. SI tu as des mesures qui apparaissent plusieurs fois le même jour, ce doit être parceque les jointures de table remontent plusieurs combinaisons. Suppose deux tables : - table temp1 : 2 colonnes id et clef. Un seul enregistrement avec id=1 et clef=100 - table temp2 : 2 colonnes clef et lib. Deux enregistrements : 100, 1234 et 100, 4321 (ces deux enregistrements ont la même valeur de clef La requête select id,temp1.clef,lib from temp1,temp2 where temp1.clef=temp2.clef; retournera deux enregistrements bien qu'il n'y en ait qu'un dans temp1. La requête select DISTINCT id,temp1.clef,lib from temp1,temp2 where temp1.clef=temp2.clef; retournera les deux mêmes enregistrements car leurs valeurs sont bien distinctes (colonne lib) Par contre la requête select DISTINCT id,temp1.clef from temp1,temp2 where temp1.clef=temp2.clef; ne retourne qu'un enregistrement car la variable temp2.lib n'est plus retournée et ne distingue donc plus les deux enregistrements. Il faut que tu comprennes bien ce qui ci-dessus, que tu analyses pourquoi plusieurs enregistrements sont retournés par ta requête et si c'est normal. Si c'est normal, expose cela clairement et nous verrons ce qu'il est possible de faire. |
Bon j'ai trouvé un truc qui fonctionne mais si vous avez une meilleure idée n'hésitez pas...
|
Salut,
|