Maison >base de données >Oracle >Récapitulatif et partage des fonctions de date Oracle

Récapitulatif et partage des fonctions de date Oracle

WBOY
WBOYavant
2022-03-18 18:19:032426parcourir

Cet article vous apporte des connaissances pertinentes sur Oracle. Il présente principalement certains problèmes liés aux fonctions de date couramment utilisés, notamment SYSDATE, ADD_MONTHS, LAST_DAY, TRUNC, ROUND, etc. J'espère qu'il sera utile à tout le monde.

Récapitulatif et partage des fonctions de date Oracle

Tutoriel recommandé : "Tutoriel Oracle"

Fonctions de date et d'heure du système

Fonction SYSDATE

Cette fonction n'a aucun paramètre et peut obtenir l'heure actuelle du système.

Code de cas :

select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

Résultat :

Fonction SYSTIMESTAMP

Cette fonction n'a aucun paramètre et peut obtenir l'heure actuelle du système, qui contient des informations de fuseau horaire et est précise à la microseconde près.

Code de cas

select systimestamp from dual;

Résultat :

Fonction de fuseau horaire de la base de données

Fonction DBTIMEZONE

Cette fonction n'a aucun paramètre d'entrée et renvoie le fuseau horaire de la base de données.

Code cas :

select dbtimezone from dual;

Résultat :

Fonction pour ajouter le mois spécifié à la date :

Fonction ADD_MONTHS(r,n)

Cette fonction renvoie le nombre de mois ajoutés à la date spécifiée r La date après le n. Où

r : la date indiquée.

n : Le nombre de mois à ajouter. Si N est un nombre négatif, cela signifie le nombre de mois à soustraire.

Code de cas :

select to_char(add_months(to_date('2018-11-12', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-10-31', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd'),
       to_char(add_months(to_date('2018-09-30', 'yyyy-mm-dd'), 1),
               'yyyy-mm-dd')
  from dual;

Résultat : (Si la date spécifiée est le dernier jour du mois, le dernier jour du nouveau mois sera renvoyé. Si le nouveau mois a moins de jours que le mois spécifié, la date valide sera être automatiquement rappelé)

Fonction Dernier jour du mois

Fonction LAST_DAY(r)

Renvoie le dernier jour du mois en cours pour la date r spécifiée.

Code de cas :

select last_day(sysdate) from dual;

Résultat :

Fonction de date pour la semaine après la date spécifiée :

Fonction NEXT_DAY(r,c)

Renvoie le caractère de date (c) pour la semaine après la date R spécifiée : Indique le jour de la semaine) date correspondante.

Code de cas :

 select next_day(to_date('2018-11-12','yyyy-mm-dd'),'星期四') from dual;

Résultat :

Fonction qui renvoie une partie spécifique de la date spécifiée

Fonction EXTRACT(time)

Renvoie l'année, le mois, le jour et les parties de date divisées de la heure spécifiée.

Code cas :

select extract(year from timestamp '2018-11-12 15:36:01') as year,
       extract(month from timestamp '2018-11-12 15:36:01') as month,
       extract(day from timestamp '2018-11-12 15:36:01') as day,
       extract(minute from timestamp '2018-11-12 15:36:01') as minute,
       extract(second from timestamp '2018-11-12 15:36:01') as second
  from dual;

Résultat :

Renvoie le nombre de mois entre deux dates :

MONTHS_BETWEEN(r1,r2) fonction

Cette fonction renvoie les mois directs de la date r1 et de la date r2. Lorsque r1>r2, un nombre positif est renvoyé. Si r1 et r2 sont le même jour dans des mois différents, un nombre entier est renvoyé, sinon une décimale est renvoyée. Lorsque r1

Code cas :

select months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-11-12', 'yyyy-mm-dd')) as zs, --整数
       months_between(to_date('2018-11-12', 'yyyy-mm-dd'),
                      to_date('2017-10-11', 'yyyy-mm-dd')) as xs, --小数
       months_between(to_date('2017-11-12', 'yyyy-mm-dd'),
                      to_date('2018-10-12', 'yyyy-mm-dd')) as fs --负数
  from dual;

Résultat :

Fonction d'interception de date

Fonction ROND (r[,f])

arrondit la date r selon le format de f. Si f n’est pas renseigné, il sera arrondi au jour le plus proche.

Code cas :

select sysdate, --当前时间
       round(sysdate, 'yyyy') as year, --按年
       round(sysdate, 'mm') as month, --按月
       round(sysdate, 'dd') as day, --按天
       round(sysdate) as mr_day, --默认不填按天
       round(sysdate, 'hh24') as hour --按小时
  from dual;

Résultat :

La fonction TRUNC(r[,f])

intercepte la date r au format f. Si f n'est pas renseigné, la date du jour sera interceptée.

Code de cas :

select sysdate, --当前时间
       trunc(sysdate, 'yyyy') as year, --按年
       trunc(sysdate, 'mm') as month, --按月
       trunc(sysdate, 'dd') as day, --按天
       trunc(sysdate) as mr_day, --默认不填按天
       trunc(sysdate, 'hh24') as hour --按小时
  from dual;

Résultat :

Tutoriel recommandé : "Tutoriel Oracle Learning"

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer