Est-il possible de convertir un texte en un nombre dans une requête MySQL ? J'ai une colonne dont l'identifiant se compose d'un nom et d'un nombre au format "nom-nombre". La colonne est de type VARCHAR. Je veux trier les lignes en fonction du nombre (lignes avec le même nom) mais la colonne est triée selon l'ordre des caractères, c'est-à-dire
name-1
name-11
name-12
name-2
Si je coupe le nombre, puis-je convertir le nombre 'varchar' en nombre 'réel' et l'utiliser pour trier les lignes ? Je voudrais obtenir l'ordre suivant.
name-1
name-2
name-11
name-12
Je ne peux pas représenter le nombre comme une colonne séparée.
édité le 2011-05-11 9:32
J'ai trouvé la solution suivante ... ORDER BY column * 1
. Si le nom ne contient pas de chiffres, peut-on utiliser cette solution en toute sécurité ?
1 votes
nom est exactement nom ou cela peut être n'importe quel caractère ? Je veux dire : est-ce une chaîne de quatre caractères ou un vrai nom ?
0 votes
name
peut être n'importe quelle séquence de lettres.1 votes
duplicata possible de mysql tri naturel