La función SUBSTR extrae y devuelve un segmento de una cadena fuente dada. Extrae una sub cadena de una longitud especificada de una cadena fuente, iniciando desde una posición indicada. Si la posición de inicio es más grande que la longitud de la cadena fuente, null es devuelto. Si el número de caracteres desde la posición inicial especificada a extraer es más grande que la longitud de la cadena fuente, es devuelto el segmento desde la posición inicial especificada hasta el final de la cadena fuente.
Literales número y fecha son automáticamente convertidos a caracteres cuando estos parasen como parámetros de la función. Expresiones numéricas y fechas son primero evaluadas y después convertidas a carácter.
La función SUBSTR toma tres parámetros, los primeros dos son obligatorios y el tercero es opcional. 
Sintaxis:
SUBSTR(cadena fuente, posición inicial, número caracteres)
El número por defecto de caracteres a extraer es igual al número de caracteres de la posición inicial a la posición final de la cadena fuente.
Ejemplo:
-- LA FUNCION SUBSTR
-- LOCATIONS COUNTRIES JOB_HISTORY REGIONS DEPARTMENTS EMPLOYEES JOBS
SELECT 10000 - 3 FROM DUAL;
SELECT substr(10000 - 3, 3, 2) FROM DUAL;
-- EXTRAE DESDE LA POSICION 4 TRES CARACETERES
SELECT SYSDATE FROM DUAL;
SELECT SUBSTR(SYSDATE,4,3) FROM DUAL;
-- EXTRAE DESDE LA POSICION 10 HASTA EL FINAL,
-- LA POSICION INICIAL SI ES MAS GRANDE QUE LA CADENA FUENTE 
-- LA FUNCION DEVUELVE NULL
SELECT job_title FROM jobs;
SELECT SUBSTR(job_title,10) FROM jobs;
-- EXTRAE DESDE LA POSICION 1 DOS CARACETERES
SELECT DISTINCT SUBSTR(job_id, 1, 2) FROM jobs;
Comentarios
Publicar un comentario