oracle里从右截取字符,ORACLE怎么截取字符串例如有一个位字符串

如题所述

SELECT substr('helloword', -1, 5) from dual 从右边开始截取5位。

Oracle 截取字符串 

    SUBSTR:取子字符串,从“起始位置”开始,取“多少"个,当起始位置为负数的时候,从右边开始查找。

    SUBSTR(源字符串,起始位置,要取多少位)

    例:Select SUBSTR('ORC+001',1,3) From dual; 返回的是“ORC”

    Select SUBSTR('ORC+001',-5,3) From dual; 返回的是“ORC” 

    INSTR:默认查找顺序为从左到右。当起始位置为负数的时候,从右边开始查找。INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)
    例:Select INSTR('ORC+001','+',1,1) From dual ;
    返回的是"4",如果该字符串没有匹配字符返回的是“0”。 

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-24
截取字符可以使用字符函数 substr(s1, m, n)
参数具体表示: 从字符串s1的第m位起,截取长度为n的子串并返回。m小于0表示从右侧起
举例:
select substr('helloword', -1, 1) result from dual t;
返回结果为 d
解释:返回字符串右侧第一个字符。本回答被提问者和网友采纳
第2个回答  2016-04-03
SELECT SUBSTR('你好啊',-1,1) from dual;