La plupart des principaux SGBDR fournissent au moins une fonction qui nous permet de renvoyer le nom du mois à partir d'une date.
MySQL
MySQL a un MONTHNAME()
fonction spécialement conçue pour renvoyer le nom du mois à partir d'une date :
SELECT MONTHNAME('2030-12-25');
Résultat :
December
MySQL a aussi un DATE_FORMAT()
fonction qui peut obtenir le même effet.
La langue utilisée pour le nom du mois est contrôlée par la valeur de lc_time_names
variable système. Voir Comment définir les paramètres régionaux pour la connexion actuelle dans MySQL pour plus d'informations.
Voir 2 Fonctions qui renvoient le nom du mois à partir d'une date dans MySQL pour des exemples des deux fonctions, y compris comment renvoyer le nom court du mois.
SQL Server
Il existe plusieurs façons de le faire dans SQL Server. Une façon consiste à utiliser le DATENAME()
fonction avec month
comme premier argument :
SELECT DATENAME(month, '2030-09-01');
Résultat :
September
Ce code fonctionnera sur n'importe quel SGBD prenant en charge T-SQL. Par exemple, vous pouvez l'utiliser avec Windows Azure SQL Database et Azure SQL Edge.
Voir 3 façons d'obtenir le nom du mois à partir d'une date dans SQL Server pour plus d'options. Cela inclut le FORMAT()
fonction, qui vous permet de spécifier une langue pour le nom du mois.
Oracle
Pour obtenir le nom complet du mois dans Oracle, utilisez le TO_CHAR(datetime)
fonction avec le MONTH
élément de format :
SELECT TO_CHAR(DATE '2035-10-03', 'MONTH')
FROM DUAL;
Résultat :
OCTOBER
Voir Comment obtenir le nom du mois à partir d'une date dans Oracle pour plus d'options.
PostgreSQL
PostgreSQL a aussi un TO_CHAR()
fonction similaire à celle d'Oracle :
SELECT TO_CHAR(TIMESTAMP '2020-12-16 10:41:35', 'Month');
Résultat :
December
Voir Obtenir le nom du mois à partir d'une date dans PostgreSQL pour plus d'options.
MariaDB
Comme MySQL, MariaDB a à la fois un MONTHNAME()
fonction et un DATE_FORMAT()
une fonction.
Voici un exemple de la dernière :
SELECT DATE_FORMAT('2021-08-19', '%M');
Résultat :
August
Une différence entre les versions MariaDB et MySQL de DATE_FORMAT()
est que MariaDB accepte un troisième argument qui vous permet de spécifier les paramètres régionaux (MySQL ne le fait pas). Cela signifie que vous pouvez spécifier les paramètres régionaux depuis la fonction dans MariaDB, sans avoir à modifier les paramètres régionaux de la session en cours.
Voir 3 façons d'obtenir le nom du mois à partir d'une date dans MariaDB pour plus d'exemples.