Est-ce un select count(*) ou un select * que vous voulez ?
Votre requête select count(*) vous ramène une seule ligne qui est le nombre d’occurrences. Et il ne peut pas y avoir de tri avec une seule ligne.
Donc, je vais supposer que c'est select *
Changer le type Varchar (en quoi ?) ne devrait rien changer. Mais vous pouvez essayer pour voir, ça ne mange pas de pain.
Le group by n'est pas nécessaire ici, car c'est un select * ou un select count(*) global et non pas pour une colonne particulière, ou pour certaines colonnes. Le problème se situerait donc ailleurs.
Normalement le tri se fait correctement avec le Order by. Donc, c'est bizarre. Mais je ne visualise pas bien ce qu'il y a dans la base, ce que sort la requête, et ce que devrait sortir la requête. Un exemple de 3 ou 4 lignes serait le bienvenu.
Si vous avez des données KEC002, KEC012, KEC312, alors ça devrait bien se passer.
Si vous avez des données KEC2, KEC12, KEC312, alors l'ordre sera KEC12, KEC2, KEC312, qui n'est peut-être pas celui que vous voudriez avoir.
Message édité par olivthill le 27-12-2011 à 10:31:08