Du kan bruge SUBSTR
og INSTR
:
select substr('john.abc_1234', 1, instr('john.abc_1234', '_') -1)
from dual
Opdater
Derudover, hvis du kører fra Oracle 10g på, kan du tage Regex-stien, som mere kraftfuldt vil håndtere undtagelser.
Her er nogle links til, hvordan du gør det i Oracle:
- http://psoug.org/reference/regexp.html
- http://psoug.org/snippet/Regular -Udtryk--Regexp-Cheat-Sheet_856.htm
- http://www.regular-expressions.info/oracle.html