Difficulty: Easy

Fecha de la aritmética es muy común en la aplicación de base de datos. En Oracle, se puede sumar, restar y comparar FECHA columnas, pero no se puede multiplicar o dividir. Oracle tiendas de siglo, año, mes, día, hora, minutos y segundos como parte de la columna FECHA.

Ahora echemos un vistazo a cómo añadir día / hora / minuto / segundo a una fecha valor. Oracle espera que un número constante de la fecha en la aritmética como el número de días. En otras palabras, usted necesita convertir a hora, minuto y segundo a la fracción de un día y entonces usted puede añadir o restar valor que a partir de la fecha valor. He aquí algunos ejemplos:

  1. Añadir un día.
    seleccionar to_date ('02-22-2008 10:30:30 ',' mm-dd-aaaa hh24: mi: ss') el día de hoy,
    to_date ('02-22-2008 10:30:30 ',' mm-dd-aaaa hh24: MI: SS ') +1 next_day
    de la doble;
    HOY NEXT_DAY
    ------------------------- -------------------------
    02-22-08 10:30:30 02-23-08 10:30:30
  2. Añadir una hora.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') + 1 / 24 next_hour
    de la doble;
    HOY NEXT_HOUR
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 11:30:30
  3. Añadir un minuto.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') + 1 / (24 * 60) next_min
    de la doble;
    HOY NEXT_MIN
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 10:31:30
  4. Añadir un segundo.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') + 1 / (24 * 60 * 60) next_sec
    de la doble;
    HOY NEXT_SEC
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 10:30:31
  5. Restar un día.
    seleccionar to_date ('02-22-2008 10:30:30 ',' mm-dd-aaaa hh24: mi: ss') el día de hoy,
    to_date ('02-22-2008 10:30:30 ',' mm-dd-aaaa hh24: MI: SS ') - 1 prev_day
    de la doble;
    HOY PREV_DAY
    ------------------------- -------------------------
    02-22-08 10:30:30 02-21-08 10:30:30
  6. Restar una hora.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: MI: SS ') - 1 / 24 prev_hour
    de la doble;
    HOY PREV_HOUR
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 09:30:30
  7. Restar un minuto.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') - 1 / (24 * 60) prev_min
    de la doble;
    HOY PREV_MIN
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 10:29:30
  8. Restar un segundo.
    seleccionar to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') el día de hoy,
    to_date ('02-22-08 10:30:30 ',' mm-dd-yy hh24: mi: ss') - 1 / (24 * 60 * 60) prev_sec
    de la doble;
    HOY PREV_SEC
    ------------------------ ------------------------
    02-22-08 10:30:30 02-22-08 10:30:29

Fecha de valor en Oracle tiene dos componentes, la fecha y la hora. Oracle almacena la hora, minutos y segundos junto con la fecha. Como se puede ver en los ejemplos anteriores, la fecha en Oracle aritmética es simple y fácil de usar.

Average rating: