Unas de las más utilizadas, sobre todo el tratamiento de flags, tenemos a:
SUBSTR(cadena,inicio,longitud) para extraer unas letras de un texto. Los parámetros:
- cadena = Texto
- inicio = Posición Inicial, por defecto 1. Si el valor es negativo, p.e. -1, la posición inicial es la longitud de la cadena -1. Si ponemos 0, Oracle pondrá 1.
- longitud = Longitud del texto a extraer. En caso de omitirse se extrae todo el string.
substr('abcdefg', 3, 2) = 'cd'
substr('abcdefg', 3) = 'cdefg'
substr('abcdefg', -3, 1) = 'e'
INSTR(cadena,cadena_a_buscar, inicio, iteración) para buscar la posición donde se encuentra la cadena a buscar. Los parámetros:
- cadena = Texto donde se buscará
- cadena_a_buscar = Texto que se buscará
- inicio = Posición Inicial, por defecto 1. Si el valor es negativo, p.e. -1, la posición inicial es la longitud de la cadena -1 y entonces la busqueda es modo reverso
- iteración = Número de vez que buscamos.
Ejemplos
instr('abcdeabcde', 'e') = 5
instr('abcdeabcde', 'e',1,1) = 5
instr('abcdeabcde', 'e',1,2) = 10
instr('abcdeabcde', 'e',-2,1) = 5
instr('abcdeabcde', 'a',-2,2) = 1