cs_blueangel
Messages postés69Date d'inscriptionsamedi 4 janvier 2003StatutMembreDernière intervention19 mars 2009
-
14 févr. 2006 à 13:48
Mindiell
Messages postés558Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention 5 septembre 2007
-
15 févr. 2006 à 10:14
<RESULTAT>
<node>
blueangel12@yahoo.com
<DATE>13/02/2006</DATE>
<HEURE>18:39:05</HEURE>
.
</node>
<node>
Amien1@yahoo.com
<DATE>13/02/2006</DATE>
<HEURE>20:40:05</HEURE>
.
</node>
<node>
blueangel12@yahoo.com
<DATE>14/02/2006</DATE>
<HEURE>18:39:05</HEURE>
.
</node>
<node>
Amien1@yahoo.com
<DATE>14/02/2006</DATE>
<HEURE>19:39:05</HEURE>
.
</node>
</RESULTAT>
Bonjour tout le monde jai un problème dans le tri dans un document
Xml en faite dans mon flux Xml les nuds sont triées par rapport au
date et lheure par ordre croissant mon probléme est le suivant est ce
que je peux faire un groupemment par rapport à lemetteur tout en
gardant le tri sur la date. Lelement le plus ancien sera le premier
sauf quand va grouper sur un même emetteur et dans ce cas on aura
<RESULTAT>
<node>
blueangel12@yahoo.com
<DATE>13/02/2006</DATE>
<HEURE>18:39:05</HEURE>
.
</node>
<node>
blueangel12@yahoo.com
<DATE>14/02/2006</DATE>
<HEURE>18:39:05</HEURE>
.
</node>
<node>
Amien1@yahoo.com
<DATE>13/02/2006</DATE>
<HEURE>20:40:05</HEURE>
.
</node>
<node>
Amien1@yahoo.com
<DATE>14/02/2006</DATE>
<HEURE>19:39:05</HEURE>
.
</node>
</RESULTAT>
en faite je suis entrain de passer un requete qui me renvoie une liste de noeud sur cette forme .
les noeud sont trié à travers la requete SQL suivante par date du plus ancien au plus récent :
SELECT EMETTEUR, DATE, HEURE
FROM tb_Personne
ORDER BY DATE, HEURE
donc pour moi il me faut les emeteurs du plus ancien au plus récent
mais ces emetteurs doivent être regroupé au moment de l'affichage par
leur adresse mails.
de façon à ce que l'emetteur le plus ancien
soit affiché en premier mais que ses enregistremment le suivent aprés,
le deuxieme emetteur suit la même logique c'est à dire que dans chaque
premier noeud les enregistrement sont trié par date mais ils sont
groupé par emetteur, j'éspere que je suis un peu plus claire.
Mindiell
Messages postés558Date d'inscriptionjeudi 25 juillet 2002StatutMembreDernière intervention 5 septembre 20071 15 févr. 2006 à 10:14
Il te faut donc d'abord la liste des personnes triée, puis pour chaque personne la liste de leur message...
SELECT emetteur, MIN(date) AS date, MIN(heure) AS heure
FROM tb_Personne
GROUP BY emetteur
ORDER BY date, heure
Pour chacun de ces résultats tu veux la liste de leurs messages, tu vas donc joindre les 2 tables, la première créée par toi (ci-dessus), la deuxième, la table de base :
SELECT T1.emetteur, T2.jour, T2.heure
FROM (
SELECT emetteur, min(jour) AS jour, min(heure) AS heure
FROM Tb_Personne
GROUP BY emetteur
) AS T1, Tb_Personne AS T2
WHERE T1.emetteur = T2.emetteur
ORDER BY T1.jour, T1.heure
Qui te permet de trier tes données par un autre point que ta base par défaut...