oracle字串中包含數字的排序問題

2021-10-11 05:19:28 字數 1169 閱讀 6334

根據這個欄位中的年份和多少號進行倒序,直接查詢看結果是不行的!

後面找到了正規表示式的regexp_replace這個函式,6個引數

第乙個是輸入的字串

第二個是正規表示式

第三個是替換的字元

第四個是標識從第幾個字元開始正規表示式匹配。(預設為1)

第五個是標識第幾個匹配組。(預設為全部都替換掉)

第六個是是取值範圍:

i:大小寫不敏感;

c:大小寫敏感;

n:點號 . 不匹配換行符號;

m:多行模式;

x:擴充套件模式,忽略正規表示式中的空白字元。

然後我就只取其中的數字,按照數字進行排序,結果是這樣的。

和上面沒有區別,看著他是字串型別,然後我把他轉為數字型別。

前面的沒什麼問題了,後面的20209跑到最後面去了,我就想著把多少號是1位數字的前面加個0,在來排序

這次終於正常了!

擷取oracle字串中的數字

方法一 如果oracle版本不是太低的話,使用 正規表示式函式 regexp substr 處理。regexp substr有5個引數,分別是 第乙個是輸入的字串 第二個是正規表示式 第三個是標識從第幾個字元開始正規表示式匹配。預設為1 第四個是標識第幾個匹配組。預設為1 第五個是是取值範圍 i 大...

oracle判斷是否包含字串

一 oracle判斷是否包含字串的方法 1 contains,contains用法如下 select from students where contains address,beijing 但是,使用contains謂詞有個條件,那就是列要建立索引,也就是說如果上面語句中students表的add...

oracle 只取字串中的數字

create or replace function getnumber str varchar2 return varchar2 is rstr varchar2 4000 begin if str is null then return null else rstr for i in 1 len...