Funciones Útiles Oracle/SQL

Post on 18-Jul-2015

317 views 4 download

Transcript of Funciones Útiles Oracle/SQL

Funciones Útiles Oracle/SQL

Ing. Cristian Gómez Alvarez@cristianparkhttp://cristianpark.wordpress.com

● MANEJO DE CADENAS

● CONVERSIÓN

● FUNCIONES NUMÉRICAS

● FECHAS

● AVANZADAS

● Listado completo en:

http://www.techonthenet.com/oracle/functions/

FUNCIONES ORACLE/SQL

Funciones que permiten realizar operaciones con variables o campos de tipos de datos que representen cadenas. Las de mayor uso son:

● LENGTH● LOWER – UPPER● REPLACE● ASCII – CHR● SUBSTR● INSTR

MANEJO DE CADENAS

Permite determinar el número de caracteres que utiliza una variable o campo (puede diferir del definido)

Sintaxis

LENGTH(cadena)

Entrada

cadena: Variable/campo de tipo de datos cadena (varchar2, character)

Salida

Número de caracteres usados por la cadena

LENGTH

Permite convertir todos los caracteres de una cadena a minúsculas.

Sintaxis

LOWER(cadena)

Entrada

cadena: Variable/campo de tipo de datos cadena (varchar2, character)

Salida

Cadena con todos los caracteres en minúsculas

LOWER

Permite convertir todos los caracteres de una cadena a mayúsculas.

Sintaxis

UPPER(cadena)

Entrada

cadena: Variable/campo de tipo de datos cadena (varchar2, character)

Salida

Cadena con todos los caracteres en mayúsculas

UPPER

Permite reemplazar caracteres de una cadena

Sintaxis

REPLACE(cadena, reemplazar[, reemplazo] )

Entrada

cadena: string/variable/campo de tipo de datos carácter (varchar2, character)

reemplazar: string/variable/campo de tipo de datos carácter (varchar2, character)

Reemplazo (opcional): string/variable/campo de tipo de datos carácter (varchar2, character)

Salida

Cadena con los remplazos efectuados (elimina los caracteres de reemplazar si no se especifica la cadena reemplazo)

REPLACE

Retorna el código ASCII de un caracter

Sintaxis

ASCII(caracter)

Entrada

caracter: carácter/variable/campo del que se desea saber su código ASCII.

Salida

Código ASCII de caracter

ASCII

Retorna el caracter generado con un código ASCII

Sintaxis

CHR(codigoASCII)

Entrada

codigoASCII: código ASCII del caracter a obtener.

Salida

Caracter que representa codigoASCII

CHR

Recortar una cadena a una longitud determinada

Sintaxis

SUBSTR(cadena, posInicio, [longitud] )

Entrada

cadena: cadena/variable/campo de tipo cadena de la que se quiere extraer una porción

posInicio: posición de inicio desde la que se corta la cadena

Longitud: longitud de la cadena a obtener

Salida

Cadena recortada desde posInicio hasta longitud caracteres

SUBSTR

Retorna la posición de un carácter/cadena que está contenido en una cadena

Sintaxis

INSTR( cadena, subCadena [, posicionInicio [, numOcurrencia ] ] )

Entrada

cadena: cadena/variable/campo de tipo cadena en la que se busca subCadena

SubCadena: parte de la cadena original de la que se quiere determinar la posición.

posInicio: posición de inicio desde la que se busca subCadena en cadena

numOcurrencia: si subCadena está más de una vez en cadena, se puede determinar de qué ocurrencia se desea obtener la posición

Salida

Número que indica la posición donde empieza subCadena dentro de cadena

INSTR

Funciones que permiten realizar conversiones entre tipos de datos:

● CAST● TO_CHAR● TO_DATE● TO_NUMBER

CONVERSIÓN

Convierte un valor de un tipo de datos a otro

Sintaxis

CAST (expresión | subconsulta AS tipo)

Entrada

Expresión | subconsulta: Valor a convertir

tipo: tipo de dato al que se desea convertir

Salida

Valor en tipo de dato tipo

CAST

Conversiones soportadas

Convertir un valor en cadena

Sintaxis

TO_CHAR( valor [, formato ], [ lenguajeNLS ] )

Entrada

valor: valor a convertir a cadena

formato: formato del número/fecha que se va a convertir

LenguajeNLS: lenguaje NLS al que se debe convertir

Salida

Cadena del valor convertido

TO_CHAR

Convertir una cadena a fecha

Sintaxis

TO_DATE( cadena [, formato ], [ lenguajeNLS ] )

Entrada

cadena: valor a convertir a fecha

formato: formato de la cadena que se va a convertir a fecha

LenguajeNLS: lenguaje NLS al que se debe convertir

Salida

Fecha de la cadena convertida

TO_DATE

Convertir una cadena en número

Sintaxis

TO_NUMBER( cadena [, formato ], [ lenguajeNLS ] )

Entrada

cadena: cadena a convertir a valor numérico

formato: formato de la cadena que se va a convertir

LenguajeNLS: lenguaje NLS al que se debe convertir

Salida

Valor numérico de la cadena convertida

TO_NUMBER

Funciones que permiten realizar operaciones numéricas:

● EXTRACT● ROUND● POWER● MOD

NUMÉRICAS

Extrae una porción de una fecha

Sintaxis

EXTRACT (

{ YEAR | MONTH | DAY | HOUR | MINUTE | SECOND }

| { TIMEZONE_HOUR | TIMEZONE_MINUTE }

| { TIMEZONE_REGION | TIMEZONE_ABBR }

FROM { valorFecha | valorIntervalo } )

Entrada

valorFecha | valorIntervalo: valor de fecha del que se extrae la porción

Salida

Porción de la fecha/intervalo que se extrae

EXTRACT

Redondear un valor numérico

Sintaxis

ROUND( numero, [ decimales ] )

Entrada

numero: valor numérico a redondear

decimales: número de decimales a los que se debe redondear

Salida

Número redondeado con el número de decimales

ROUND

Elevar un número a una potencia

Sintaxis

POWER(numero, potencia)

Entrada

numero: número que se eleva a una potencia

potencia: potencia a la que se eleva el número

Salida

Resultado de la potenciación

POWER

Retorna el residuo de la división de dos números

Sintaxis

MOD(numerador, denominador)

Entrada

numerador: numerador de la operación

denominador: denominador de la operación

Salida

Valor numérico del residuo de la división de numerador entre denominador

MOD

Funciones especiales de Oracle para referenciar fechas e intervalos

● SYSDATE● SYSTIMESTAMP

FECHAS

Retorna la fecha del sistema en el formato por defecto

Sintaxis

SYSDATE

Ejemplo

SELECT SYSDATE FROM DUAL

SYSDATE

Retorna el intervalo actual de fecha (fecha + hora-minutos-segundos + zonaHoraria) del sistema en el formato por defecto

Sintaxis

SYSTIMESTAMP

Ejemplo

SELECT SYSTIMESTAMP FROM DUAL

SYSTIMESTAMP

COALESCE permite verificar valores nulos entre expresiones y tomará la primera que sea diferente de NULL

Sintaxis

COALESCE (exp1, exp2, … , expn )

Entrada

exp1, exp2, … , expn: expresiones que se evalúa si retornan NULL

Salida

Primera expresión que no retorne null / NULL si todas las expresiones retornaban null

AVANZADAS