私は並べ替えたい文字列を返すクエリを持っています。 ASC/DESCでソートすると、同じ結果が得られます。 は、ここでの出力例です:SQLの文字列順、数字が最後に表示されます
AVI
ksky site
Secure East
Shlomi
VSEStaging
1200165
120186
120186
120186
120032
しかし、私は、アルファベットの文字列の前に数字を持っているだろう。 は、例えば、ASCのために:DESCため例えば
1200165
120186
120186
120186
120032
AVI
ksky site
Secure East
Shlomi
VSEStaging
:
VSEStaging
Shlomi
Secure East
ksky site
AVI
120032
私は現在、そうのようなREGEXを使用します。
REGEXP_SUBSTR(UPPER(COLUMN_NAME), '^\D*') ,
TO_NUMBER(REGEXP_SUBSTR(UPPER(COLUMN_NAME), '\d+'))
支援してください。
https://asktom.oracle.com/pls/apex(** [このリンクの最後の答え]をチェックしてください/ f?p = 100:11:0 :::: P11_QUESTION_ID:9522557800346940016)** –
提供されるソリューションは、ASCでは良いが、DESCには適しています。 –
それは、すべての文字列が100%数字(他の文字なし)または100%文字(他の文字なし)のいずれかであるという前提の1つですか?それが保証されていない場合は、明確にする必要があります:文字列 '123abcd'はどのように注文するべきですか?どうすれば '#! - ' - 注文に落ちるべきですか?等 – mathguy