- ベストアンサー
ソートについて
オラクルのデータベースで半角英数字、半角スペース、 半角記号が混ざった文字列に定義された列があって、 その列をうまくソートする方法はありますか? (例) 桁数は3桁、半角スペースは[_]アンダースコアであらわすとして 05 1_ a_ 18 2_ 1a ↓ 1_ 1a 2_ 05 18 a_ よろしくおねがいします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>その列をうまくソートする方法はありますか? どのような基準でソートすると旨いのですか? サンプルだけ書かれても、ソートの基準がわかりません。
その他の回答 (1)
- ALGO-9
- ベストアンサー率66% (12/18)
回答No.2
(例)からすれば、 2_ → 05 → 18 → a_ のあたりが問題になっているのでしょうか? そのままSORTすると、05が2_の前になるということですかね。 各値を、数値と文字に分解してみてはどうですかね。 .(値).....(A).....(B)............... 1_ --> 1 , _ 1a --> 1 , a 2_ --> 2 , _ 05 --> 5 , NULL 18 --> 18 , NULL a_ --> 9999 , a_ .(値).....(A).....(B)............... 項目(A),(B)でSORTするとかすると... 当然、テーブルへの項目追加と関数の作成等が必要となりますが、どうですかね。 とりあえずの案ですけどね。