Modèles de conversion date/heure

Netezza Performance Server SQL reconnaît certains modèles dans le modèle de sortie et les remplace par les données formatées de manière appropriée.

Tableau 1. Modèles de conversion de la date et de l'heure
Schéma Descriptif Exemple
HH ou HH12 Heure du jour (01-12). to_char(timestamp '2015-02-14 20:19:07','HH') renvoie '08'
HH24 Heure du jour (00-23). to_char(timestamp '2015-02-14 20:19:07', 'HH24') renvoie '20'
MI Minute (00-59). to_char(timestamp '2015-02-14 20:19:07','MI') renvoie '19'
SS Deuxième (00-59). to_char(timestamp '2015-02-14 20:19:07','SS') renvoie '07'
SSSS Secondes après minuit (0-86399). to_char(timestamp '2015-02-14 20:19:07', 'SSSS') renvoie '73147'
MS Millisecondes00-00.999) après arrondi. to_char(timestamp '2015-02-14 20:19:07.123456789', 'MS') renvoie '123'
US Microsecondes00-00.999999) après arrondi. to_char(timestamp '2015-02-14 20:19:07.123456789', 'US') renvoie '123457'
A.M.  P.M.
a.m.  p.m.
AM    PM
am    pm
Indicateur du méridien (en majuscules ou en minuscules, avec ou sans points). L'indicateur méridien spécifié par le modèle est ajusté dans la sortie pour correspondre à l'heure (am pour les heures de 0 à 12 ou pm pour les heures de 12 à 23). Le format de l'indicateur méridien spécifié par le modèle (majuscules ou minuscules, avec ou sans points) est utilisé pour la sortie. to_char(timestamp '2015-02-14 20:19:07', 'HH:MI:SS am') renvoie '08:19:07 pm'
Y,YYY Année (4 chiffres et plus) avec une virgule. to_char(date '2016-02-14','Y,YYY') renvoie '2,016'
YYYY Année (4 chiffres et plus). to_char(date '2016-02-14','YYYY') renvoie '2016'
YYY Les trois derniers chiffres de l'année. to_char(date '2016-02-14','YYY') renvoie '016'
YY Les deux derniers chiffres de l'année. to_char(date '2016-02-14','YY') renvoie '16'
Y Dernier chiffre de l'année. to_char(date '2016-02-14','Y') renvoie '6'
IYYY Année ISO (4 chiffres et plus). to_char(date '2016-01-01','IYYY') renvoie '2015'
IYY Trois derniers chiffres de l'année ISO. to_char(date '2016-02-14','IYY') renvoie '015'
IY Les deux derniers chiffres de l'année ISO. to_char(date '2016-02-14','IY') renvoie '15'
I Derniers chiffres de l'année ISO. to_char(date '2016-02-14','I') renvoie '5'
B.C.  A.D.
b.c.  a.d.
BC    AD
bc    ad
Indicateur d'époque (majuscules ou minuscules, avec ou sans points). Le format de l'indicateur d'ère spécifié par le modèle (majuscules ou minuscules, avec ou sans points) est utilisé pour la sortie. to_char(date '2016-02-14','YYYY B.C.') renvoie '2016 A.D.'
MONTH Nom du mois en majuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-02-14','MONTH') renvoie 'FEBRUARY '
Month Nom du mois en majuscules et minuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-03-14','Month') renvoie 'March '
month Nom du mois en minuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-04-14','month') renvoie 'april '
MON Nom du mois abrégé en majuscules (3 caractères). to_char(date '2016-02-14','MON') renvoie 'FEB'
Mon Nom du mois en caractères mixtes abrégés (3 caractères). to_char(date '2016-03-14','Mon') renvoie 'Mar'
mon Nom du mois en minuscules abrégées (3 caractères). to_char(date '2016-04-14','mon') renvoie 'apr'
MM Numéro du mois (01-12). to_char(date '2016-04-14','MM') renvoie '04'
DAY Nom du jour en majuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-02-15','DAY') renvoie 'MONDAY '
Day Nom du jour en majuscules et minuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-02-16','Day') renvoie 'Tuesday '
day Nom de jour complet en minuscules, complété par des blancs jusqu'à 9 caractères. to_char(date '2016-02-17','day') renvoie 'wednesday'
DY Nom du jour abrégé en majuscules (3 caractères). to_char(date '2016-02-15','DY') renvoie 'MON'
Dy Nom de jour abrégé en majuscules mixtes (3 caractères). to_char(date '2016-02-16','Dy') renvoie 'Tue'
dy Nom du jour en minuscules abrégées (3 caractères). to_char(date '2016-02-17','dy') renvoie 'wed'
DDD Jour de l'année (001-366). to_char(date '2016-02-17','DDD') renvoie '048'
DD Jour du mois (01-31). to_char(date '2016-02-17','DD') renvoie '17'
D Jour de la semaine (1-7 ; Sunday=1). to_char(date '2016-02-17','D') renvoie '4'
W Semaine du mois (1-5), la première semaine commençant le premier jour du mois. to_char(date '2016-02-17','W') renvoie '3'
WW Numéro de la semaine de l'année (01-53), la première semaine commençant le premier jour de l'année. to_char(date '2016-02-17','WW') renvoie '07'
IW Numéro de semaine ISO de l'année. Le premier jeudi de la nouvelle année fait partie de la semaine 1. to_char(date '2016-01-01','IW') renvoie '53'
CC Siècle (2 chiffres). to_char(date '2016-02-17','CC') renvoie '21'
J Jours juliens, c'est-à-dire le nombre de jours écoulés depuis le 24 novembre 4714 av. to_char(date '2016-02-17','J') renvoie '2457389'
Q Trimestre to_char(date '2016-02-17','J') renvoie '1'
RM Mois en chiffres romains majuscules (I-XII ; I=janvier), complété par des blancs jusqu'à 4 caractères. to_char(date '2016-04-11','RM') renvoie 'IV '
rm Mois en chiffres romains minuscules (i-xii ; i=janvier), complétés par des blancs jusqu'à 4 caractères. to_char(date '2016-10-11','RM') renvoie 'X '
Remarques sur l'utilisation :
  • Les espaces dans un modèle se reflètent dans le résultat. Par exemple, " to_char(timestamp '2015-02-14 20:19:07','HH MI SS') renvoie " '08 19 07'.
  • Pour éditer du texte, placez-le entre guillemets. Par exemple, " to_char(date '2016-04-02','"Year: "YYYY') renvoie " 'Year: 2016'.
  • Pour produire un guillemet double, il faut le faire précéder d'une barre oblique inverse. Par exemple, " to_char(date '2015-02-14','\"YYYY\" \"FMMonth\"') renvoie " '"2015" "February"'.
Vous pouvez appliquer les modificateurs suivants à n'importe quel modèle pour en modifier le comportement.
Tableau 2. Modificateur de modèle
Modificateur Descriptif
FM (préfixe) Supprime les zéros de tête et les blancs de fin qui seraient autrement ajoutés pour donner à la sortie une largeur fixe. Par exemple :

to_char(date '2016-03-14','FMMonth') renvoie 'March'

Le préfixe " FM supprime les quatre blancs qui suivent normalement "mars".

FX (préfixe) Oblige une chaîne d'entrée à contenir au moins autant de blancs que ceux spécifiés dans le modèle :
  • Lorsque le préfixe FX n'est pas spécifié, la chaîne d'entrée peut contenir le même nombre de blancs que le modèle, plus ou moins de blancs. Par exemple :
    • to_date('31 Dec 2015','DD Mon YYYY') renvoie 2015-12-31
    • to_date('31 Dec 2015','DD Mon YYYY') renvoie 2015-12-31
    • to_date('31 Dec 2015','DD Mon YYYY') renvoie 2015-12-31
  • Lorsque le préfixe FX est spécifié, la chaîne d'entrée peut contenir le même nombre de blancs que le modèle, plus de blancs, mais pas moins. Par exemple :
    • to_date('31 Dec 2015','FXDD Mon YYYY') renvoie 2015-12-31
    • to_date('31 Dec 2015','FXDD Mon YYYY') renvoie 2015-12-31
    • to_date('31 Dec 2015','FXDD Mon YYYY') renvoie ERROR: Invalid Date.
Cela peut s'avérer utile lorsqu'une procédure stockée doit vérifier que les caractères saisis sont correctement formatés avant de les traiter.
TH (suffixe) Ajoute le suffixe de numéro ordinal en majuscules approprié (ST, ND, RD ou TH). Par exemple :

to_char(date '2016-04-01','FMDDTH') renvoie '1ST'

th (suffixe) Ajoute le suffixe minuscule approprié du numéro ordinal (st, nd, rd ou th). Par exemple :

to_char(date '2016-04-02','FMDDth') renvoie '2nd'

Le tableau suivant décrit les modèles de conversion numérique.
Tableau 3. Modèles pour les conversions numériques
Schéma Descriptif Exemple
9 Indique une position pour un chiffre. Un blanc est inclus dans la sortie pour chaque 9 du modèle qui ne correspond pas à un chiffre de la sortie.
to_char(-125,'999') renvoie ''-125' '
'to_char(-125,'99999') renvoie ''  -125' '
'to_char(125,'999') renvoie '' 125'
0 Indique une position pour un zéro initial. to_char(-125,'00999') renvoie '-00125'
. Un point indique la position d'une virgule décimale. to_char(-125,'999.999') renvoie '-125.000'
, Une virgule indique la position d'un délimiteur de groupe (mille). Le délimiteur utilisé dépend de votre locale.  
PR Ce suffixe entraîne l'affichage d'une valeur négative entre crochets. N'affecte pas une valeur positive. to_char(-485,'999PR') renvoie '<485>'
S Ce préfixe ou suffixe place un signe plus (+) ou moins (-) dans la position correspondante. to_char(485,'S999') renvoie '+485'
L Symbole de la monnaie. Le symbole utilisé dépend de votre région.  
D Délimiteur décimal. Le délimiteur utilisé dépend de votre locale. to_char(-125,'999D99') renvoie '-125.00'
G Séparateur de groupe (utilise la locale). to_char(-3125,'9G999D9') renvoie '-3125.0'
MI Ce préfixe ou suffixe :
  • Pour un nombre négatif, le signe moins (-) est placé à l'endroit correspondant.
  • Pour un nombre positif, place un blanc à la position correspondante.
Un signe formaté à l'aide du modèle MI n'est pas une ancre dans le nombre ; par exemple, un signe formaté à l'aide du modèle MI n'est pas une ancre dans le nombre :
  • to_char(-12,'S9999') renvoie '' -12'.
  • to_char(-12,'MI9999') renvoie ''- 12'.
to_char(-485,'MI999') renvoie à " '-485' "
" to_char(-485,'999MI') " renvoie à " '485-' "
" to_char(485,'MI999') renvoie à " '  485' "
" to_char(485,'999MI') " renvoie à " ' 485 '
RN Chiffre romain (entrée 1 - 3999). Les chiffres romains ignorent les fractions décimales. to_char(5.2,'RN') renvoie 'V'
V Décale la sortie d'une puissance de 10 pour chaque 9 à droite du V. Pour une fonction to_char, un modèle ne peut contenir à la fois un motif V et un point décimal. Par exemple, " 99.9V99 ou " 99D9V99 n'est pas autorisé.
to_char(12.4,'99V999') renvoie '' 12400' '
'to_char(12.45,'99V9') renvoie '' 125'