Lorsque vous obtenez le nom du jour et/ou du mois à partir d'une date dans Oracle, vous souhaiterez peut-être le renvoyer en majuscules, en minuscules ou en casse du titre.
Heureusement, c'est facile à faire. Le résultat reflète la capitalisation de votre modèle de format.
Exemple
Lors de l'utilisation de TO_CHAR()
pour renvoyer des parties de date à partir d'une valeur de date, vous utilisez un ou plusieurs éléments de format pour produire un modèle de format. Ce modèle de format détermine comment la date est formatée lorsqu'elle est renvoyée.
Nous pouvons utiliser le DAY
et MONTH
éléments de format pour renvoyer respectivement le nom du jour et le nom du mois.
Mais surtout, la capitalisation que nous utilisons pour ces éléments de format détermine la capitalisation du résultat.
Exemple :
SELECT
TO_CHAR( DATE '2037-12-03', 'month' ) AS "month",
TO_CHAR( DATE '2037-12-03', 'Month' ) AS "Month",
TO_CHAR( DATE '2037-12-03', 'MONTH' ) AS "MONTH"
FROM DUAL;
Résultat :
month Month MONTH ____________ ____________ ____________ december December DECEMBER
Il en est de même pour le DAY
élément de format :
SELECT
TO_CHAR( DATE '2037-12-03', 'day' ) AS "day",
TO_CHAR( DATE '2037-12-03', 'Day' ) AS "Day",
TO_CHAR( DATE '2037-12-03', 'DAY' ) AS "DAY"
FROM DUAL;
Résultat :
day Day DAY ____________ ____________ ____________ thursday Thursday THURSDAY
Cela s'applique également lors du retour de la version abrégée du jour ou du mois.
Exemple :
SELECT
TO_CHAR( DATE '2037-12-03', 'mon' ) AS "mon",
TO_CHAR( DATE '2037-12-03', 'Mon' ) AS "Mon",
TO_CHAR( DATE '2037-12-03', 'MON' ) AS "MON"
FROM DUAL;
Résultat :
mon Mon MON ______ ______ ______ dec Dec DEC
Et :
SELECT
TO_CHAR( DATE '2037-12-03', 'dy' ) AS "dy",
TO_CHAR( DATE '2037-12-03', 'Dy' ) AS "Dy",
TO_CHAR( DATE '2037-12-03', 'DY' ) AS "DY"
FROM DUAL;
Résultat :
dy Dy DY ______ ______ ______ thu Thu THU
L'année
Un fait peut-être moins connu est qu'Oracle Database fournit également des éléments de format qui renvoient l'année complète en toutes lettres. Plus précisément, YEAR
et SYEAR
(pour répondre aux besoins ou avant les dates de la Colombie-Britannique).
La capitalisation de ces éléments de format affecte également la sortie :
SELECT
TO_CHAR( DATE '2037-12-03', 'year' ) AS "year",
TO_CHAR( DATE '2037-12-03', 'Year' ) AS "Year",
TO_CHAR( DATE '2037-12-03', 'YEAR' ) AS "YEAR"
FROM DUAL;
Résultat :
year Year YEAR ______________________ ______________________ ______________________ twenty thirty-seven Twenty Thirty-Seven TWENTY THIRTY-SEVEN
Et :
SELECT
TO_CHAR( DATE '-2037-12-03', 'syear' ) AS "syear",
TO_CHAR( DATE '-2037-12-03', 'Syear' ) AS "Syear",
TO_CHAR( DATE '-2037-12-03', 'SYEAR' ) AS "SYEAR"
FROM DUAL;
Résultat :
syear Syear SYEAR _______________________ _______________________ _______________________ -twenty thirty-seven -Twenty Thirty-Seven -TWENTY THIRTY-SEVEN
Lors de l'application de la casse du titre avec le Syear
élément de format, nous devons nous rappeler que seul le premier caractère - le S
caractère - est en majuscule et tous les caractères restants sont en minuscules (y compris le Y
caractère):