Skip to content

Archives

  • janvier 2022
  • décembre 2021
  • novembre 2021
  • octobre 2021
  • septembre 2021

Categories

  • Aucune catégorie
Trend RepositoryArticles and guides
Articles

Tutoriel pour DBA Oracle

On janvier 1, 2022 by admin
Formater les DATES dans Oracle
  • Fonctions et opérateurs de date.
  • SYSDATE Exemple
  • CURRENT_DATE Exemple
  • SYSTIMESTAMP Exemple
  • Modèles de format de date
  • TO_DATE Exemple
  • ADD_MONTHS
  • MONTHS_BETWEEN
  • DERNIER JOUR
  • NEXT_DAY
  • EXTRACT

Fonctions et opérateurs de date.

Pour voir la date et l’heure du système, utilisez les fonctions suivantes :

CURRENT_DATE :renvoie la date actuelle dans le fuseau horaire de la session, dans une valeur du calendrier grégorien de type de données
DATE
SYSDATE :Renvoie la date et l’heure actuelles.
SYSTIMESTAMP :La fonction SYSTIMESTAMP renvoie la date du système, y compris les secondes fractionnelles et le fuseau horaire
de la base de données. Le type de retour est TIMESTAMP AVEC FUSEAU HORAIRE.

SYSDATE Exemple

Pour voir la date et l’heure système actuelles, donnez la requête suivante :

select sysdate from dual;
SYSDATE
——-
8-AUG-03

Le format dans lequel la date est affichée dépend du paramètre NLS_DATE_FORMAT.

Par exemple, définissez le NLS_DATE_FORMAT au format suivant

alter session set NLS_DATE_FORMAT=’DD-MON-YYYY HH:MIpm’;

Puis donnez l’instruction suivante

select sysdate from dual;
SYSDATE
——————
8-AUG-2003 03 :05pm

Le paramètre par défaut de NLS_DATE_FORMAT est DD-MON-YY

CURRENT_DATE Exemple

Pour voir la date et l’heure actuelles du système avec le fuseau horaire, utilisez la fonction CURRENT_DATE

ALTER SESSION SET TIME_ZONE = ‘-4 :0’;
ALTER SESSION SET NLS_DATE_FORMAT = ‘DD-MON-YYYY HH24:MI :SS’;
SELECT SESSIONTIMEZONE, CURRENT_DATE FROM DUAL;
SESSIONTIMEZONE CURRENT_DATE
————— ——————–
-04:00 22-APR-2003 14:15:03
ALTER SESSION SET TIME_ZONE = ‘-7:0’;
SELECT SESSIONTIMEZONE, CURRENT_DATE FROM DUAL;
SESSIONTIMEZONE CURRENT_DATE
————— ——————–
-07 :00 22-APR-2003 09:15:33

SYSTIMESTAMP Exemple

Pour voir la date et l’heure actuelles du système avec les secondes fractionnelles avec le fuseau horaire donner l’instruction suivante

select systimestamp from dual;
SYSTIMESTAMP
——————————-
22-APR-03 08.38.55.538741 AM -07:00

Modèles de format de date

Pour traduire la date en une chaîne de format différente, vous pouvez utiliser la fonction TO_CHAR avec le format de date. Par exemple pour voir le jour actuel vous pouvez donner la requête suivante

Select to_char(sysdate, ‘DAY’) « Today » FROM DUAL ;
JOURNAL
——-
JOURNAL

Pour traduire une valeur de caractère, qui est dans un format autre que le format de date par défaut, en une valeur de date, vous pouvez utiliser la fonction TO_DATE avec le format de date à date

Comme ce modèle de format « DAY », il existe de nombreux autres modèles de format de date disponibles dans Oracle. Le tableau suivant liste les modèles de format de date.

.

.

.

.

FORMAT

MEANING

D

Jour de la semaine

DD

Jour du mois

JJJ

Jour de l’année

DAY

Jour complet pour ex. ‘Monday’, ‘Tuesday’, ‘Wednesday’

DY

Jour en trois lettres pour ex. ‘MON’, ‘TUE’,’FRI’

W

Semaine du mois

WW

Semaine de l’année

MM

Mois en deux chiffres (1-.Jan, 2-Feb,…12-Dec)

MON

Mois en trois caractères comme « Jan », « Feb », « Apr »

MONTH

Mois complet comme « January », « février », « avril »

RM

Mois en caractères romains (I-XII, I-Jan, II-Feb,….XII-Dec)

Q

Quart du mois

YY

Deux derniers chiffres de l’année.

YYYY

Année complète

YEAR

Année dans des mots comme « Nineteen Ninety Nine »

HH

Heures au format 12 heures

HH12

Heures au format 12 heures

H24

Heures au format 24 heures

MI

Minutes

SS

Secondes

FF

Secondes fractionnelles

SSSSS

Millisecondes

J

Jour Julien i.c’est-à-dire les jours depuis le 1er janvier 4712 avant J.-C. jusqu’à aujourd’hui

RR

Si l’année est inférieure à 50, on considère que l’année est le 21ème siècle. Si l’année est supérieure à 50, suppose l’année au 20ème siècle.

suffixes

TH

Retourne le th, st, rd ou nd selon le nombre de tête comme 1st , 2ème 3ème 4ème

SP

Enonce le nombre de tête

AM ou… PM

Retourne AM ou PM selon l’heure

SPTH

Retourne le nombre ordinal épelé. Pour . Exemple Premier, Quatrième

Par exemple pour voir la date d’aujourd’hui dans le format suivant

Vendredi, 7 mars, 2014

Donnez l’instruction suivante

select to_char(sysdate, ‘Day, ddth Month, yyyy’) « Today » from dual ;

JOURNAL
————————
Vendredi 7 mars 2014

Par exemple, vous voulez voir les dates d’embauche de tous les employés au format suivant

Vendredi 8 août 2003

Donnez alors la requête suivante .

select to_char(hire_date, ‘Day, ddth Month, yyyy’) from emp;

TO_DATE Exemple

La fonction To_Date est utilisée pour convertir des chaînes de caractères en valeurs de date. Par exemple vous voulez voir quel était le jour du 15-aug-1947. L’utilisation de la fonction to_date pour d’abord convertir la chaîne de caractères en valeur de date et ensuite passer cette valeur à la fonction to_char pour extraire le jour.

sélectionner to_char(to_date(’15-aug-1947′,’dd-mon-yyyy’), ‘Day’)
de dual ;
TO_CHAR(
——–
Vendredi

Pour voir combien de jours se sont écoulés depuis le 15-aug-1947 alors donnez la requête suivante

select sysdate-to_date(’15-aug-1947′,’dd-mon-yyyy’) from dual ;

Maintenant nous voulons voir quelle date se produira après 45 jours à partir de maintenant

select sysdate+45 from dual ;
SYSDATE
——-
06-JUN-2003

ADD_MONTHS

Pour voir quelle date se produira après 6 mois à partir de maintenant, nous pouvons utiliser la fonction ADD_MONTHS

Sélectionner ADD_MONTHS(SYSDATE,6) à partir de dual ;
ADD_MONTHS
———-
22-OCT-2003

MONTHS_BETWEEN

Pour savoir combien de mois se sont écoulés depuis une date particulière, utilisez la fonction MONTHS_BETWEEN.
Par exemple, pour voir combien de mois se sont écoulés depuis le 15-aug-1947, donnez la requête suivante.

select months_between(sysdate,to_date(’15-aug-1947′)).
from dual;
Months
——
616.553

Pour éliminer la valeur décimale, utilisez la fonction truncate

select trunc(months_between(sysdate,to_date(’15-aug-1947′)))
from dual ;
Mois
——
616

DERNIER JOUR

Pour voir le dernier jour du mois d’une date donnée, utilisez la fonction LAST_DAY.

select LAST_DAY(sysdate) from dual;
LAST_DAY
——–
31-AUG-2003

NEXT_DAY

Pour voir quand un jour particulier arrive le prochain , utilisez la fonction NEXT_DAY.
Par exemple pour voir quand le samedi prochain arrive, donnez la requête suivante

select next_day(sysdate) from dual;
NEXT_DAY
———–
09-AUG-2003

EXTRACT

Une fonction datetime EXTRACT extrait et renvoie la valeur d’un champ date spécifié à partir d’une expression de date ou de valeur d’intervalle. Lorsque vous extrayez un TIMEZONE_REGION ou TIMEZONE_ABBR (abréviation), la valeur renvoyée est une chaîne de caractères contenant le nom ou l’abréviation du fuseau horaire approprié

La syntaxe de la fonction EXTRACT est

EXTRACT ( YEAR / MONTH / WEEK / DAY / HOUR / MINUTE / TIMEZONE FROM DATE)
Exemple
Les éléments suivants démontrent l’utilisation de la fonction EXTRACT pour extraire l’année de la date actuelle.
select extract(year from sysdate) from dual;
EXTRACT
——-
2003

.

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Archives

  • janvier 2022
  • décembre 2021
  • novembre 2021
  • octobre 2021
  • septembre 2021

Méta

  • Connexion
  • Flux des publications
  • Flux des commentaires
  • Site de WordPress-FR
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress