Bonjour,
J'ai un petit probleme de tri des prix sur un site avec des articles...
C'est le probleme classique, l'objet à 7 € est classé après l'objet à 20 € en tri croissant...
J'ai donc fouillé un peu sur le net où j'ai trouvé ca : http://my.opera.com/cpr/blog/show.dml/160556
Et sur l'exemple ca marche...
ORDER BY CAST(le_champs as signed integer) asc;
Quand je l'utilise ca ne marche pas, je pense que ca doit provenir des espaces (les articles sont entre 20 000 et 3 000 000 d'euro)...
Du coup au tri, même avec CAST, je me retrouve avec
1 100 000
1 370 000
27 000
77 000
84 000
119 000
121 000
130 000
...
Resultat assez etrange... Je pense en fait qu'il me trie juste le premier groupe de chiffres avant l'espace...
Le probleme c'est que j'ai comme contrainte technique d'avoir le champs en varchar...
Alors ya t'il un moyen de trier ca directement via une requete MySQL ? le tri via php serai trop lourd à mettre en place, il faudrait que je reprenne tout le moteur de recherche...
Ou alors dois-je enlever tous les espaces dans la DB et les mettre en forme via php à l'affichage de la variable (solution de dernier recours si on peut pas trier ca en mysql)...
Merci d'avance
WizNx.
Configuration: Windows XP Firefox 1.0.7
