Du kan använda SUBSTR
och INSTR
:
select substr('john.abc_1234', 1, instr('john.abc_1234', '_') -1)
from dual
Uppdatera
Dessutom, om du kör från Oracle 10g och framåt, kan du ta Regex-vägen, som mer kraftfullt skulle hantera undantag.
Här är några länkar om hur man gör det i Oracle:
- http://psoug.org/reference/regexp.html
- http://psoug.org/snippet/Regular -Uttryck--Regexp-Cheat-Sheet_856.htm
- http://www.regular-expressions.info/oracle.html