Maison > base de données > tutoriel mysql > Comment trier numériquement les nombres stringifiés dans MySQL ?

Comment trier numériquement les nombres stringifiés dans MySQL ?

Patricia Arquette
Libérer: 2025-01-12 18:42:43
original
229 Les gens l'ont consulté

How to Sort Stringified Numbers Numerically in MySQL?

Trier les numéros de chaîne par valeur numérique dans MySQL

Lorsqu'il s'agit de nombres stockés sous forme de chaînes dans une base de données MySQL, le tri par taille numérique peut être délicat. Les questions suivantes mettent en lumière le problème :

Question :

Comment trier une colonne contenant des nombres stringifiés par ordre croissant, en triant par leur taille numérique plutôt que par leur représentation en caractères ?

Réponse :

La conversion explicite ou implicite des valeurs de chaîne en entiers permet un ordre numérique correct :

Conversion explicite :

<code class="language-sql">SELECT col
FROM yourtable
ORDER BY CAST(col AS UNSIGNED)</code>
Copier après la connexion

Dans cet exemple, CAST convertit la colonne col en un entier non signé avant le tri.

Conversion implicite :

<code class="language-sql">SELECT col
FROM yourtable
ORDER BY col + 0</code>
Copier après la connexion

L'ajout de 0 oblige MySQL à interpréter col comme une valeur numérique avant de trier.

Remarque :

MySQL interprète les chaînes de gauche à droite pour la conversion. Par exemple :

  • "1" est converti en 1.
  • "ABC" est converti en 0 (pas de chiffre initial).
  • "123miles" est converti en 123.
  • "$123" est converti en 0 (le premier caractère n'est pas un nombre).

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal