pl sql datetime format
Obtenga información sobre el formato de fecha y hora PL SQL y algunas funciones útiles sobre fecha y hora, marca de tiempo e intervalo:
En el PL / SQL Disparadores en Serie PL SQL , aprendimos sobre sus tipos, usos y ventajas.
En este artículo, exploraremos la fecha y la hora en PL / SQL y algunas de las funciones en los tipos de datos de fecha y hora, marca de tiempo e intervalo. Además, haremos algunas operaciones básicas en Datetime e Interval.
¡Comencemos con la discusión!
Lo que vas a aprender:
Formato de fecha y hora PL SQL
PL / SQL tiene un tipo de datos de fecha / hora que nos permite retener y calcular fechas, intervalos y horas. La variable que es de tipo fecha u hora contiene un valor llamado DateTime. La variable que mantiene el tipo de datos de intervalo se llama intervalo. Cada uno de estos tipos de datos tiene campos que establecen el valor.
Los tipos de datos DateTime se enumeran a continuación:
- TIMESTAMP
- TIMESTAMP CON HUSO HORARIO
- HORARIO CON HUSO HORARIO LOCAL
- FECHA
Los tipos de datos de intervalo se enumeran a continuación:
- INTERVALO DÍA AL SEGUNDO
- INTERVALO AÑO A MES
FECHA
Las fechas y horas de duración fija se almacenan en el tipo de datos DATE. Comprende la hora del día a partir de la medianoche en segundos. La sección de fecha apunta al primer día del mes actual y la sección de tiempo apunta a la medianoche. Contiene información de fecha y hora en tipos de datos numéricos y de caracteres.
SYSDATE es una función de fecha que recupera la fecha y la hora actuales. El rango de fechas adecuado es del 1 de enero de 4712 a. C. al 31 de diciembre de 9999 d. C. Los valores de carácter en el formato predeterminado (determinado por el parámetro de inicialización de Oracle NLS_DATE_FORMAT) se convierten de forma natural mediante PL / SQL en valores DATE.
Podemos aplicar operaciones matemáticas como sumas y restas en fechas. PL / SQL interpreta literales enteros en forma de días. Por ejemplo, SYSDATE + 1 apunta a mañana.
TIMESTAMP
El tipo de datos de marca de tiempo es una extensión del tipo de datos DATE. Se utiliza para guardar el año, el mes, la hora y el segundo. El formato de marca de tiempo predeterminado está determinado por el parámetro de inicialización de Oracle NLS_TIMESTAMP_FORMAT.
Sintaxis:
|_+_|Aquí, la precisión no es un parámetro obligatorio y apunta al recuento del número de dígitos que está en la parte fraccionaria del campo de segundos. La precisión debe ser cualquier literal entero de 0 a 9. El valor predeterminado se establece en 6.
TIMESTAMP CON HUSO HORARIO
Este tipo de datos es una extensión del tipo de datos TIMESTAMP y contiene desplazamiento de zona horaria. El desplazamiento de la zona horaria es la diferencia horaria (en horas y minutos) entre la hora local y la hora universal coordinada (UTC).
La marca de tiempo predeterminada con formato de zona horaria está determinada por el parámetro de inicialización de Oracle NLS_TIMESTAMP_TZ_FORMAT. Sintaxis:
|_+_|Aquí la precisión no es un parámetro obligatorio y apunta al recuento del número de dígitos que está en la parte fraccionaria del campo de segundos. La precisión debe ser cualquier literal entero de 0 a 9. El valor predeterminado se establece en 6.
mejor administrador de tareas para windows 10
Podemos mencionar la zona horaria con símbolos. Puede ser de formato largo como 'EE. UU. / Pacífico' o, en resumen, como 'PDT' o una combinación de ambos. Por lo tanto, este tipo de datos se utiliza para cubrir y computar información en ubicaciones geográficas.
HORARIO CON HUSO HORARIO LOCAL
La marca de tiempo con el tipo de datos de la zona horaria local es una extensión del tipo de datos TIMESTAMP y contiene el desplazamiento de la zona horaria. El desplazamiento de la zona horaria es la diferencia horaria (en horas y minutos) entre la hora local y la hora universal coordinada (UTC).
Sintaxis:
|_+_|Aquí, la precisión no es un parámetro obligatorio y apunta al recuento del número de dígitos que está en la parte fraccionaria del campo del segundo. La precisión debe ser cualquier literal entero de 0 a 9. El valor predeterminado se establece en 6.
TIMESTAMP WITH LOCAL TIME ZONE es diferente de TIMESTAMP WITH TIME ZONE debido al hecho de que mientras insertamos un valor en la base de datos, el valor se establece en la zona horaria de la base de datos y el desplazamiento de la zona horaria no se mantiene en la columna de la base de datos. Sin embargo, al obtener el valor, se devuelve en la sesión de la zona horaria local.
INTERVALO AÑO A MES
Este tipo de datos se utiliza para almacenar y calcular el intervalo de años y meses.
Sintaxis:
|_+_|Aquí, la precisión es el recuento de la cantidad de dígitos en el campo de un año. La precisión debe ser cualquier literal entero de 0 a 4. El valor predeterminado se establece en 2.
INTERVALO AÑO AL SEGUNDO
El intervalo de año a segundo tipo de datos se utiliza para almacenar y calcular intervalos de días, horas, minutos y segundos.
Sintaxis:
|_+_|Aquí el l_precision y precisión_fraccional son el recuento del número de dígitos en el campo de días y segundos, respectivamente.
La precisión debe ser cualquier literal entero de 0 a 9. Los valores predeterminados se establecen en 2 y 6 respectivamente.
Valores de campo: fecha y hora e intervalo
- SEGUNDO: Los valores para el rango de fecha y hora válido son de 00 a 59,9 (m) donde m denota el tiempo fraccional en segundos. Los valores para el intervalo de intervalo válido son de 00 a 59,9 (m) donde m denota el intervalo en fracciones de segundo.
- MINUTO: Los valores para el rango de fecha y hora válido son de 00 a 59. Los valores para el rango de intervalo válido son de 0 a 59.
- HORA: Los valores para el rango de fecha y hora válido son de 00 a 23. Los valores para el rango de intervalo válido son de 0 a 23.
- DÍA: Los valores para el rango de fecha y hora válido son de 01 a 31 (limitado por los valores de AÑO y MES, según las reglas del calendario local). El valor de un intervalo de intervalo válido es cualquier número entero distinto de cero.
- MES: Los valores para el rango de fecha y hora válido son de 01 a 12. Los valores para el rango de intervalo válido son de 0 a 11.
- AÑO: Los valores para el rango de fecha y hora válido son de -4712 a 9999 sin incluir el año 0. El valor del rango de intervalo válido es cualquier número entero distinto de cero.
- TIMEZONE_HOUR: Los valores para el rango de fecha y hora válido son de -12 a 14, incluye cambios de horario de verano. Esto no es aplicable al rango de intervalo válido.
- TIMEZONE_MINUTE: Los valores para el rango de fecha y hora válido son de 00 a 59. Esto no es aplicable al rango de intervalo válido.
- TIMEZONE_REGION: Los valores para el intervalo de fecha y hora válido no son aplicables para DATE o TIMESTAMP. Esto no es aplicable para un intervalo de intervalo válido.
- TIMEZONE_ABBR: Los valores para el intervalo de fecha y hora válido no son aplicables para DATE o TIMESTAMP. Esto no es aplicable al rango de intervalo válido.
Funciones PL SQL en fecha y hora
Aquí, myn contienen los valores de la fecha y hora.
Si. No. | Nombre | Propósitos |
---|---|---|
7 | SYSDATE () | Obtiene la fecha y hora actual. |
1 | ÚLTIMO DÍA (m) | Obtiene el último día del mes. |
2 | AGREGAR_MESES (m, n) | Suma my n meses. |
3 | MONTHS_BETWEEN (m, n) | Obtiene el recuento del número de meses entre my n. |
4 | NEXT_DAY (m, día) | Obtiene la fecha y hora del día siguiente después de m. |
5 | LA PRÓXIMA VEZ | Obtiene la hora / día de la zona horaria solicitada por el usuario. |
6 | REDONDA (m (, unidad)) | Rondas m. |
8 | TRUNC (m (, unidad)) | Trunca m. |
Funciones PL SQL en la marca de tiempo
Aquí, m contiene el valor de la marca de tiempo.
Si. No. | Nombre | Propósitos |
---|---|---|
7 | TO_TIMESTAMP_TZ (m, (formato)) | Convierte la cadena m en TIMESTAMP WITH TIMEZONE. |
1 | FECHA Y HORA ACTUAL () | Obtiene un TIMESTAMP WITH TIMEZONE que tiene la sesión actual y la zona horaria de la sesión. |
2 | FROM_TZ (m, time_zone) | Convierte m TIMESTAMP y menciona time_zone en TIMESTAMP WITH TIMEZONE. |
3 | LOCALTIMESTAMP () | Obtiene un TIMESTAMP que tiene la hora local en la zona horaria de la sesión. |
4 | SYSTEMTIMESTAMP () | Obtiene un TIMESTAMP WITH TIMEZONE que tiene la hora actual y la zona horaria de la base de datos. |
5 | SYS_EXTRACT_UTC (m) | Convierte m TIMESTAMP WITH TIMEZONE en TIMESTAMP con fecha y hora en UTC. |
6 | TO_TIMESTAMP (m, (formato)) | Convierte la cadena m en TIMESTAMP. |
Implementación de código con funciones de fecha y hora y marca de tiempo:
|_+_|Salida del código anterior:
Funciones PL SQL en intervalo
Si. No. | Nombre | Propósitos |
---|---|---|
1 | NUMTODSINTERVAL (m, intervalo) | Transforma el número m en INTERVALO DE DÍA A SEGUNDO. |
2 | NUMTOYMINTERVAL (m, intervalo) | Transforma el número m en INTERVALO AÑO A MES. |
3 | TO_DSINTERVAL (m) | Transforma la cadena m en INTERVALO DÍA A SEGUNDO. |
4 | TO_YMINTERVAL (m) | Transforma la cadena m en INTERVALO AÑO A MES. |
Operaciones aritméticas en fecha y hora e intervalo
PL / SQL le permite crear expresiones de intervalo y de fecha y hora.
La lista de operadores que se pueden aplicar son:
- Si el primer operando es DateTime y el segundo operando es un intervalo, y queremos aplicar el operador (+) en ellos, el valor del resultado es de tipo DateTime.
- Si el primer operando es DateTime y el segundo operando es un intervalo, y queremos aplicarles el operador (-), el valor del resultado es del tipo DateTime.
- Si el primer operando es intervalo y el segundo operando es DateTime, y queremos aplicarles el operador (+), el valor de resultado es de tipo DateTime.
- Si el primer operando es DateTime y el segundo operando es DateTime, y queremos aplicarles el operador (-), el valor de resultado es de tipo intervalo.
- Si el primer operando es intervalo y el segundo operando es un intervalo, y queremos aplicar el operador (+) en ellos, el valor del resultado es de tipo intervalo.
- Si el primer operando es intervalo y el segundo operando es un intervalo, y queremos aplicar el operador (-) en ellos, el valor del resultado es de tipo intervalo.
- Si el primer operando es intervalo y el segundo operando es numérico, y queremos aplicar el operador (*) en ellos, el valor del resultado es de tipo intervalo.
- Si el primer operando es numérico y el segundo operando es un intervalo, y queremos aplicar el operador (*) en ellos, el valor del resultado es de tipo intervalo.
- Si el primer operando es intervalo y el segundo operando es numérico, y queremos aplicar el operador (/) en ellos, el valor del resultado es de tipo intervalo.
Implementación de código con algunas operaciones aritméticas en Datetime e Interval.
|_+_|La salida del código anterior:
Explicación del código anterior:
- En el código, ('1600 5: 20: 1') significa 1600 días, 5 horas, 20 minutos y 1 segundo .
- En la primera salida, el primer operando es DateTime y el segundo operando es un intervalo. Al agregarlos, obtuvimos una fecha como 24-DEC con hora en AM.
- En la segunda salida, el primer operando es DateTime y el segundo operando es un intervalo. Al restar primero del segundo, obtuvimos una fecha como 20-MAR con la hora en PM.
Preguntas y respuestas frecuentes
P # 1) ¿Cuál es la marca de tiempo actual?
Responder: La marca de tiempo actual o CURRENT_TIMESTAMP describe una marca de tiempo que depende de la lectura de la hora del reloj del día mientras se ejecuta una declaración SQL en el servidor.
P # 2) ¿Qué devuelve Sysdate en Oracle?
Responder: La función Sysdate () obtiene la fecha y hora actual configuradas en el sistema operativo donde se encuentra la base de datos. El tipo de datos de valor que devuelve es FECHA.
P # 3) ¿Qué función PL / SQL dará la fecha y hora actual del sistema?
Responder: La función PL / SQL que proporciona la fecha y hora actual del sistema es SYSDATE ().
P # 4) ¿Qué es DUAL SQL?
Responder: DUAL es una tabla de base de datos creada por Oracle de forma predeterminada junto con un diccionario de datos. Contiene una fila y una columna. DUAL es propiedad de SYS pero puede ser utilizado por todos los usuarios.
aplicación espía de teléfono celular para android
P # 5) ¿Cómo se declara una variable de fecha en PL SQL?
Responder: Podemos declarar una variable de fecha en PL / SQL con la sintaxis que se indica a continuación:
|_+_|P # 6) ¿Cuál es el formato de fecha en Oracle?
Responder: El formato de fecha estándar en Oracle para entrada y salida es 'DD / MON / YY'. Esto se configura mediante el valor del parámetro NLS_DATE_FORMAT.
Conclusión
En este tutorial de formato de fecha y hora PL SQL, hemos discutido en detalle algunos conceptos básicos de fecha y hora PL / SQL que son esenciales para usarlos en programación.
Hemos cubierto los siguientes temas que se enumeran a continuación:
- Fecha y hora.
- Funciones relacionadas con la fecha y hora, la marca de tiempo y el intervalo.
- Operaciones aritméticas en fecha y hora e intervalo.
- Valores de campos en fecha y hora e intervalo.
Lectura recomendada
- Funciones de fecha y hora en C ++ con ejemplos
- Tutorial de Python DateTime con ejemplos
- Tutorial de C # DateTime: Trabajar con fecha y hora en C # con ejemplo
- Subprogramas: funciones y procedimientos PL SQL con ejemplos
- Funciones de fecha de VBScript: Funciones de formato de fecha, DateAdd y cDate
- Tutorial PL SQL para principiantes con ejemplos | ¿Qué es PL / SQL?