我想在一个特定字符之后获取所有字符,但最后一次出现

时间:2019-05-08 05:55:39

标签: sql oracle substr

想要获取某个特定字符之后但最后一次出现的所有字符。

当前的“ CSM.Sales.0000.Territory Manager” 所需的输出:区域经理

SELECT
    SUBSTR('CSM.Sales.0000.Territory Manager', INSTR('CSM.Sales.0000.Territory Manager', '.') + 1) AS subject
FROM dual

3 个答案:

答案 0 :(得分:0)

您可以在下面尝试-

DEMO

select substr('CSM.Sales.0000.Territory Manager', - 
    instr(reverse('CSM.Sales.0000.Territory Manager'), '.') + 1) from dual

输出:

Territory Manager

答案 1 :(得分:0)

)

答案 2 :(得分:0)

REGEXP_SUBSTR()正是这样做的:

SELECT REGEXP_SUBSTR('CSM.Sales.0000.Territory Manager', '[^.]+$', 1, 1) AS subject
FROM dual;