"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je trier une colonne VARCHAR contenant des nombres sous forme de chiffres dans MySQL ?

Comment puis-je trier une colonne VARCHAR contenant des nombres sous forme de chiffres dans MySQL ?

Publié le 2024-12-22
Parcourir:863

How Can I Sort a VARCHAR Column Containing Numbers as Numerics in MySQL?

Nombres déguisés : trier Varchar en tant que valeurs numériques dans MySQL

Lorsque vous traitez des données structurées, il est souvent nécessaire de manipuler des valeurs numériques. Cependant, les données sont parfois stockées sous forme de chaînes (VARCHAR) pour diverses raisons. Cela peut créer des défis lorsque vous essayez d'effectuer des opérations mathématiques ou un tri, car les chaînes ne sont pas intrinsèquement de nature numérique.

Dans ce cas, la question se pose : comment pouvons-nous trier une colonne VARCHAR contenant des nombres en tant que nombres réels dans MySQL ?

La magie de la conversion de chaîne en nombre

La solution la plus simple et la plus efficace consiste à tirer parti de la capacité inhérente de MySQL à convertir des chaînes en nombres. En multipliant la colonne VARCHAR par 1, nous forçons essentiellement MySQL à l'interpréter comme une valeur numérique.

SELECT *
FROM tbl
ORDER BY number_as_char * 1;

Cette requête obtient le résultat souhaité, en triant la colonne sous forme de nombres. De plus, cette technique présente plusieurs avantages :

  • Robustesse : Elle peut gérer des erreurs qui autrement entraîneraient un sous-dépassement ou des résultats incorrects.
  • Flexibilité : Il peut accueillir des valeurs non numériques dans la colonne, en les ignorant lors du tri.
  • Suppression alphanumérique : Les valeurs alphanumériques telles que "123A" verront la partie numérique extraite, ce qui leur permettra d'être triées correctement.

En conclusion, en convertissant prudemment les chaînes en nombres à l'aide de la multiplication, nous pouvons trier efficacement les colonnes VARCHAR sous forme de valeurs numériques dans MySQL, nous offrant plus de flexibilité et de précision dans la gestion des données.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3