Méthode de conversion d'horodatage Oracle
Oracle est un puissant système de gestion de base de données, et son type d'horodatage est un type de données de date et d'heure de haute précision. Il existe deux types d'horodatages : avec fuseau horaire et sans fuseau horaire. Les types d'horodatage sont stockés dans la base de données sous forme de 8 octets (avec fuseau horaire) ou de 7 octets (sans fuseau horaire) et peuvent être stockés avec une précision de l'ordre de la nanoseconde. Dans Oracle, la conversion des types d'horodatage est très simple. Cet article présentera la méthode de conversion d'horodatage Oracle.
Le type d'horodatage Oracle peut être converti en type de date, le type de date peut convertir une chaîne en date via la fonction to_date et le type d'horodatage peut convertir une chaîne en date via l'horodatage de la fonction to_timestamp. La méthode de conversion spécifique est la suivante :
-- Convertir l'horodatage en date
select to_date('2021-10-21 12:00:00', 'YYYY-MM-DD HH24:MI:SS') from dual ;
-- Date à timestamp
select to_timestamp('2021-10-21 12:00:00', 'YYYY-MM-DD HH24:MI:SS') from dual;
Lors de la conversion des types d'horodatage et de date, le format de la chaîne de date doit être spécifiée. Dans l'exemple ci-dessus, le format de la chaîne de date est « AAAA-MM-JJ HH24:MI:SS », où AAAA représente l'année à 4 chiffres, MM représente le mois à 2 chiffres, DD représente la date à 2 chiffres, et HH24 représente le format 24 heures. Le nombre d'heures, MI représente le nombre de minutes et SS représente le nombre de secondes.
Le type d'horodatage Oracle peut être converti en horodatage avec type de fuseau horaire, et l'horodatage avec type de fuseau horaire peut être converti en horodatage avec type de fuseau horaire via une chaîne de date avec fuseau horaire. La méthode de conversion spécifique est la suivante :
-- horodatage en horodatage avec fuseau horaire
select cast(to_timestamp('2021-10-21 12:00:00.123456789', 'YYYY-MM-DD HH24:MI:SS.FF9 ' ) comme horodatage avec fuseau horaire) de dual;
-- horodatage avec fuseau horaire à timestamp
select cast(from_tz(to_timestamp('2021-10-21 12:00:00.123456789', 'YYYY-MM-DD HH24:MI :SS.FF9'), 'Asie/Shanghai') comme horodatage) de dual ;
Lors de la conversion d'horodatages et d'horodatages avec fuseaux horaires, vous devez spécifier le format et les informations de fuseau horaire des chaînes de date avec fuseaux horaires. Dans l'exemple ci-dessus, le format de la chaîne de date avec le fuseau horaire est « AAAA-MM-JJ HH24:MI:SS.FF9 », où FF9 représente la partie décimale à 9 chiffres et les informations sur le fuseau horaire sont « Asie/Shanghai ». ', qui représente le huitième district Est.
Le type d'horodatage Oracle peut être converti en type numérique, et le type numérique peut convertir le type de données via la fonction de conversion. La méthode de conversion spécifique est la suivante :
-- Convertir l'horodatage. à la valeur numérique
select cast(to_timestamp('2021-10-21 12:00:00', 'YYYY-MM-DD HH24:MI:SS') as number) from dual;
-- Number to timestamp
select cast (to_timestamp (« 1640092800 », « SSSSS ») comme horodatage) de dual ;
Lors de la conversion des horodatages et des types numériques, vous devez spécifier le format du type numérique. Dans l'exemple ci-dessus, la valeur est au format « SSSSS », qui représente le nombre de secondes écoulées depuis le 1er janvier 4712 avant JC.
Résumé
Cet article présente la méthode de conversion du type d'horodatage Oracle, y compris la conversion de l'horodatage et du type de date, la conversion de l'horodatage et de l'horodatage avec le type de fuseau horaire et la conversion de l'horodatage et du type numérique. Lors de la conversion des horodatages, vous devez faire attention au format des chaînes de date et des informations de fuseau horaire, ainsi qu'au format des types numériques. La maîtrise de ces méthodes de conversion peut faciliter le traitement des données de type horodatage.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!