SQL Server で数値を含む VARCHAR 列を並べ替える
文字と数字が混在している VARCHAR 列を並べ替えるのは、特に難しい場合があります。希望する順序が数値の場合value.
アプローチ:
推奨されるアプローチは、数値の先頭に文字を埋め込んで、すべての文字列の長さが同じになるようにすることです。これにより、SQL Server は値を数値的に比較できるようになります。
解決策:
SELECT MyColumn FROM MyTable ORDER BY CASE ISNUMERIC(MyColumn) WHEN 1 THEN REPLICATE('0', 100 - LEN(MyColumn)) + MyColumn ELSE MyColumn END
このクエリでは:
例:
「」という名前の列について考えます。 MyColumn」に以下を記載値:
を使用上記のクエリの場合、並べ替えられた結果は次のようになります:
1 2 10 A B B1
以上がSQL Server で数字と文字が混在する VARCHAR 列を並べ替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。