nino75 Posté 31 Mai 2010 Posté 31 Mai 2010 Bonjour à tous, je souhaite faire une requête sur ma base afin d'afficher le résultat d'un tri suivant deux critères "date" et heure(format TIME)", voici la méthode que j'ai suivi: $req=mysql_query("SELECT action_trans FROM liste_action WHERE Nano= ". $list['Nano'] . " ORDER BY STR_TO_DATE(date_a,'%d/%m/%Y'),'heure'") or die("Connexion impossible"); ça marche lorsqu'on a une seule "action_trans" le dernier jour, cependant quand il y a plusieurs, ça affiche la première "action_trans" au lieu de la dernière de la journée, ce qui montre que le problème vient du tri suivant la clé "heure". pouvez-vous m'aider s.v.p. merci d'avance
captain_torche Posté 31 Mai 2010 Posté 31 Mai 2010 Si je comprends bien ta requête, tu tries en fonction de la date uniquement, au format français (Par exemple, 30/05/2010). Tu as donc un souci : à cause du format français, le 19/06/2010 sera classé avant le 30/05/2010 (Classement par ordre alphabétique). Pourquoi ne pas classer directement en fonction du timestamp ?
nino75 Posté 1 Juin 2010 Auteur Posté 1 Juin 2010 Bonjour captain_torche, le tri suivant la date fonctionne parfaitement, c'est dans le cas ou j'ai plusieurs résultats à ma requête que ça ne marche pas, car au lieu d'afficher le dernier suivant l'heure, j'affiche le premier de la journée
MarvinLeRouge Posté 11 Juin 2010 Posté 11 Juin 2010 Salut, Donc tu veux trier par date croissante et heure décroissante ? Si c'est le cas, ORDER BY date_a, heure DESC devrait faire l'affaire. Bonjour captain_torche, le tri suivant la date fonctionne parfaitement, c'est dans le cas ou j'ai plusieurs résultats à ma requête que ça ne marche pas, car au lieu d'afficher le dernier suivant l'heure, j'affiche le premier de la journée
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant