SQLで順序を維持しながら数値を含む文字列列をソートするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-24 19:43:02
オリジナル
690 人が閲覧しました

How to Sort String Columns Containing Numbers in SQL While Preserving Order?

SQL での数値を含む文字列列の並べ替え

この問い合わせは、数値を含む文字列列の並べ替えに関するものです。デフォルトの並べ替えアルゴリズムでは、数値が で配置されます。数値の後に先行ゼロを付けずに先行ゼロを付けると、意図した順序が変更される可能性があります。ユーザーは、SQL のみを使用してこの動作をオーバーライドする方法を探しています。

この問題の効果的な解決策には、CAST 関数と SUBSTRING 関数を使用して文字列の数値部分を分離することが含まれます。 CAST 関数は数値部分文字列を抽出することで、それを整数値に変換し、適切な並べ替えを可能にします。

コードの例を次に示します。

<code class="sql">SELECT *
FROM table
ORDER BY CAST(SUBSTRING(column, LOCATE(' ', column) + 1) AS SIGNED)</code>
ログイン後にコピー

たとえば、次のような列があります。 「name」に「a 1」、「a 12」、「a 2」、「a 3」などの値を指定すると、クエリは次の結果を生成します。

+----------+
+-- name --+
+----------+
+-- a 1 ---+
+-- a 2 ---+
+-- a 3 ---+
+-- a 12 --+
ログイン後にコピー

このメソッドは、英数字の接頭辞を保持しながら、数値に基づいて列を作成します。

以上がSQLで順序を維持しながら数値を含む文字列列をソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!