可以使用什麼函數來擺脫字符串中的某些字符?我知道我可以使用REPLACE()
函數,但有大約30個變量需要這樣做,希望獲得更高效的路線。如何從SQL中的字符串中刪除唯一字符
例子:
什麼它目前顯示:
BasicPay_5000
CarAllowance_6000
Bonus_7000
我需要什麼,以顯示:
5000
6000
7000
是否有一個功能,刪除所有字符,直到達到預定義的字符?例如。通過編寫一個刪除所有字符的語句,最多可以刪除_
(下劃線)。
可以使用什麼函數來擺脫字符串中的某些字符?我知道我可以使用REPLACE()
函數,但有大約30個變量需要這樣做,希望獲得更高效的路線。如何從SQL中的字符串中刪除唯一字符
例子:
什麼它目前顯示:
BasicPay_5000
CarAllowance_6000
Bonus_7000
我需要什麼,以顯示:
5000
6000
7000
是否有一個功能,刪除所有字符,直到達到預定義的字符?例如。通過編寫一個刪除所有字符的語句,最多可以刪除_
(下劃線)。
這應該有助於
select substr('BasicPay_5000', instr('BasicPay_5000','_') + 1) from dual
BasicPay_5000可以與你有任何數據被替換,如果在上述格式
它使用正則表達式在字符串的結尾得到的數字。
[0-9]
- 任何數字
{1,}
- 1個或多個先前的搜索術語
$
的 - 錨定搜索到行的結尾。
SELECT REGEXP_SUBSTR('Basic_Pay_5000','[0-9]{1,}$') FROM dual
請檢查http://stackoverflow.com/questions/16667251/query-to-get-only-numbers-from-a-string文章。這可能是有用的。 – Erko