Publicado el Dejar un comentario

Cómo obtener cuántos días hay entre dos fechas en Oracle.

Para obtener los días entre dos fechas a través de una sentencia Sql en Oracle podemos usar sencillamente la aritmética de tipos DATE (fecha) de esta base de datos. Para hacer esta operación los operandos deben ser de tipo DATE (fecha).

Supongamos que tenemos dos columnas o campos llamados START_DATE y END_DATE, ambos de tipo DATE, en una tabla llamada JOB_HISTORY. Para obtener los días entre dichas fechas utilizaríamos algo así:

SELECT 
    end_date, start_date, end_date - start_date as dias
FROM 
    job_history;

Simplemente restamos de la fecha mayo o más actual (en este caso end_date) la fecha menor o más antigua (start_date) usando le palabra reservada o símbolo de menos ( – ). El resultado sería algo así:

Hay que tomar en cuenta que en esta operación Oracle toma como comienzo de la fecha la hora cero de día, es decir que no incluye el día final. Por ejemplo, supongamos que queremos obtener los días que hay entre el primero de enero del año dos mil y el 31 de enero de ese mismo año, la consulta sql sería:

select 
    TO_DATE('31/01/2000','DD/MM/YYYY') - TO_DATE('01/01/2000','DD/MM/YYYY') as dias
from dual;

La ejecución de esta consulta nos daría como resultado 30 días y no 31 como algunos esperaríamos. La solución sería añadir 1 a la operación:

select 
    (TO_DATE('31/01/2000','DD/MM/YYYY') - TO_DATE('01/01/2000','DD/MM/YYYY')) + 1 as dias
from dual;

Espero y les sirva este entrada o post. ¡Hasta la próxima!

Publicado el Dejar un comentario

Convertir o mostrar fecha como texto en Excel

Para mostrar como texto una fecha en Excel, podemos usar la siguiente fórmula:

La celda B1, utiliza la funcion TEXTO() para convertir tanto el numero de día como el número del mes de la fecha en la celda A1 a sus nombres correspondientes. Las funciones DIA() y AÑO(), para obtener el día y el año respectivamente de la misma fecha  y  la función CONCAT() para concatenar los resultados de las fórmulas y los textos necesarios que formarán el texto resultante final.

Podemos también concatenar los textos utilizando el símbolo & (et o ampersand) en lugar de la función CONCAT() y obtendremos el mismo resultado como se muestra la fórmula en la celda C1:

Pueden jugar con los textos y las posiciones para lograr el texto resultante requerido.

¿Dudas? Deja tu comentario.

¡Hasta pronto!