Om du använder en kombination av SUBSTR, INSTR och NVL (för strängar utan understreck) returneras det du vill ha:
SELECT NVL(SUBSTR('ABC_blah', 0, INSTR('ABC_blah', '_')-1), 'ABC_blah') AS output
FROM DUAL
Resultat:
output
------
ABC
Använd:
SELECT NVL(SUBSTR(t.column, 0, INSTR(t.column, '_')-1), t.column) AS output
FROM YOUR_TABLE t
Referens:
- SUBSTR
- INSTR
Tillägg
Om du använder Oracle10g+ kan du använda regex via REGEXP_SUBSTR.