nombreFunción[(parámetro1[, parámetro2,...])]
Si una función no precisa parámetros (como SYSDATE) no hace falta colocar los paréntesis.
Las hay de dos tipos:
- Funciones que operan con una sola fila
- Funciones que operan con varias filas
Sólo veremos las primeras (más adelante se comentan las de varias filas).
Funciones de Caracteres
Conversión del texto a mayúsculas y minúsculas. Son:
Funciones de Transformación:
Funciones Numéricas
Redondeos
Matemáticas
Funciones de Trabajo con Nulos
Permiten definir valores a utilizar en el caso de que las expresiones tomen el valor nulo.
Funciones de Fecha
Las fechas se utilizan muchísimo en todas las bases de datos. Oracle proporciona dos tipos de datos para manejar fechas, los tipos DATE y TIMESTAMP. En el primer caso se almacena una fecha concreta (que incluso puede contener la hora), en el segundo caso se almacena un instante de tiempo más concreto que puede incluir incluso fracciones de segundo.
Hay que tener en cuenta que a los valores de tipo fecha se les pueden sumar números y se entendería que esta suma es de días. Si tiene decimales entonces se suman días, horas, minutos y segundos. La diferencia entre dos fechas también obtiene un número de días.
Intervalos
Los intervalos son datos relacionados con las fechas en sí, pero que no son fechas. Hay dos tipos de intervalos el INTERVAL DAY TO SECOND que sirve para representar días, horas, minutos y segundos; y el INTERVAL YEAR TO MONTH que representa años y meses. Para los intervalos de año a mes los valores se pueden indicar de estas formas:
/* 123 años y seis meses */
INTERVAL '123-6' YEAR(4) TO MONTH
/* 123 años */
INTERVAL '123' YEAR(4) TO MONTH
/* 6 meses */
INTERVAL '6' MONTH(3) TO MONTH
La precisión en el caso de indicar tanto años como meses, se indica sólo en el año.
En intervalos de días a segundos los intervalos se pueden indicar como:
/* 4 días 10 horas 12 minutos y 7 con 352 segundos */
INTERVAL '4 10:12:7,352' DAY TO SECOND(3)
/* 4 días 10 horas 12 minutos */
INTERVAL '4 10:12' DAY TO MINUTE
/* 4 días 10 horas */
INTERVAL '4 10' DAY TO HOUR
/* 4 días*/
INTERVAL '4' DAY
/*10 horas*/
INTERVAL '10' HOUR
/*25 horas*/
INTERVAL '253' HOUR
/*12 minutos*/
INTERVAL '12' MINUTE
/*30 segundos */
INTERVAL '30' SECOND
/*8 horas y 50 minutos */
INTERVAL ('8:50') HOUR TO MINUTE;
/*7 minutos 6 segundos*/
INTERVAL ('7:06') MINUTE TO SECOND;
/*8 horas 7 minutos 6 segundos*/
INTERVAL ('8:07:06') HOUR TO SECOND;
Esos intervalos se pueden sumar a valores de tipo DATE o TIMESTAMP
Obtener la fecha y hora actual
Calcular Fechas
Funciones de Conversión
Oracle es capaz de convertir datos automáticamente a fin de que la expresión final tenga sentido. En ese sentido son fáciles las conversiones de texto a número y viceversa. Ejemplo:
SELECT 5+'3' FROM DUAL /*El resultado es 8 */
SELECT 5 || '3' FROM DUAL /* El resultado es 53 */
También ocurre eso con la conversión de textos a fechas. De hecho es forma habitual de asignar fechas. Pero en diversas ocasiones querremos realizar conversiones explícitas.
TO_CHAR
Obtiene un texto a partir de un número o una fecha. En especial se utiliza con fechas (ya que de número a texto se suele utilizar de forma implícita.
Fechas
En el caso de las fechas se indica el formato de conversión, que es una cadena que puede incluir estos símbolos (en una cadena de texto):
Ejemplos:
SELECT TO_CHAR(SYSDATE, 'DD/MONTH/YYYY, DAY HH:MI:SS') FROM DUAL
/* Sale : 16/AGOSTO /2004, LUNES 08:35:15, por ejemplo
Números
Para convertir números a textos se usa está función cuando se desean características especiales. En ese caso en el formato se pueden utilizar estos símbolos:
TO_NUMBER
Convierte textos en números. Se indica el formato de la conversión (utilizando los mismos símbolos que los comentados anteriormente).
TO_DATE
Convierte textos en fechas. Como segundo parámetro se utilizan los códigos de formato de fechas comentados anteriormente.
No hay comentarios:
Publicar un comentario