ホームページ > データベース > mysql チュートリアル > MySQL で文字列化された数値を数値的に並べ替えるにはどうすればよいですか?

MySQL で文字列化された数値を数値的に並べ替えるにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-12 18:42:43
オリジナル
271 人が閲覧しました

How to Sort Stringified Numbers Numerically in MySQL?

MySQL で文字列番号を数値で並べ替えます

MySQL データベースに文字列として保存されている数値を扱う場合、数値のサイズによる並べ替えは難しい場合があります。次の質問は問題を強調しています:

質問:

文字列化された数値を含む列を昇順でソートし、文字表現ではなく数値サイズでソートするにはどうすればよいですか?

答え:

文字列値を明示的または暗黙的に整数に変換すると、正しい数値順序付けが可能になります。

明示的な変換:

<code class="language-sql">SELECT col
FROM yourtable
ORDER BY CAST(col AS UNSIGNED)</code>
ログイン後にコピー

この例では、CAST は並べ替えの前に、col 列を符号なし整数に変換します。

暗黙的な変換:

<code class="language-sql">SELECT col
FROM yourtable
ORDER BY col + 0</code>
ログイン後にコピー

0 を追加すると、MySQL はソート前に Col を数値として解釈します。

注:

MySQL は文字列を左から右に解釈して変換します。例:

  • 「1」は1に変換されます。
  • 「ABC」は 0 (先頭の数字なし) に変換されます。
  • 「123マイル」は123に変換されます。
  • 「$123」は 0 に変換されます (最初の文字は数字ではありません)。

以上がMySQL で文字列化された数値を数値的に並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート