Dividir String por posição de delimitador usando oracle SQL
Eu tenho uma string e gostaria de dividi-la por delimitador em uma determinada posição.
Por exemplo, minha String éF/P/O
e o resultado que estou procurando é:
Portanto, eu gostaria de separar a string pelo delimitador mais distante.
Nota: algumas das minhas cordas sãoF/O
também para o qual meu SQL abaixo funciona bem e retorna o resultado desejado.
O SQL que escrevi é o seguinte:
SELECT Substr('F/P/O', 1, Instr('F/P/O', '/') - 1) part1,
Substr('F/P/O', Instr('F/P/O', '/') + 1) part2
FROM dual
e o resultado é:
Por que isso está acontecendo e como posso corrigi-lo?