Můžete použít SUBSTR
a INSTR
:
select substr('john.abc_1234', 1, instr('john.abc_1234', '_') -1)
from dual
Aktualizovat
Kromě toho, pokud používáte Oracle 10g na, můžete použít cestu Regex, která by účinněji zvládla výjimky.
Zde je několik odkazů, jak to provést v Oracle:
- http://psoug.org/reference/regexp.html
- http://psoug.org/snippet/Regular -Výrazy--Regexp-Cheat-Sheet_856.htm
- http://www.regular-expressions.info/oracle.html