Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article s’applique à un fichier de base de données Microsoft Access (.mdb ou .accdb) et à un fichier de projet Microsoft Access (.adp).
Modéré : nécessite des compétences de base en macro, en codage et en interopérabilité.
Résumé
Cet article décrit les fonctions et les opérateurs disponibles dans Microsoft Office Access 2007, Microsoft Office Access 2003 et Microsoft Access 2002. Vous pouvez utiliser les fonctions et les opérateurs pour modifier le type de données Date/Heure à l’aide d’exemples de requêtes. Les exemples de requêtes que vous pouvez utiliser pour modifier les valeurs de date utilisent les tables de l’exemple de base de données Northwind.mdb.
Remarque
L’exemple de base de données Northwind pour Access 2007 n’utilise pas les mêmes champs que les versions antérieures de l’exemple de base de données Northwind. Il n’existe aucun champ HireDate et BirthDate dans la table Employees incluse dans l’exemple de base de données Northwind pour Access 2007. Le champ EmployeeID a été renommé ID et le champ FirstName a été renommé Prénom.
Informations supplémentaires
Access fournit des opérateurs et des fonctions pour valider ou modifier les champs avec le type de données Date/Heure. Les exemples de requêtes suivants utilisent les manipulations de date, les fonctions de calcul et les opérateurs de comparaison disponibles dans Access.
Microsoft fournit des exemples de programmation à titre d’illustration uniquement, sans garantie expresse ou implicite. Cela inclut, sans y être limité, les garanties implicites de commercialisation et d’adaptation à un but en particulier. Cet article considère que vous connaissez le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support Microsoft peuvent expliquer la fonctionnalité d’une procédure en particulier. Toutefois, ils ne modifieront pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures répondant à vos besoins spécifiques.
Fonction Date(), Now() et Fonction Format()
SELECT Date(), Now() ;
La fonction Date() retourne la date actuelle au format de date courte. La fonction Now() retourne la date actuelle avec l’heure.
SELECT Format(Now(), « jj mmmm aaaa ») ;
Vous pouvez utiliser la fonction Format() avec des valeurs de date pour spécifier le format de date que vous souhaitez utiliser pour la date. Cet exemple de requête retourne la date actuelle au format de date longue (01 décembre 2003).
Fonction Day(), Fonction WeekDay(), Fonction Month() et Fonction Year()
SELECT HireDate, Day(HireDate) AS Day,
Weekday(HireDate) AS WeekDay,
Month(HireDate) AS Month, Year(HireDate) AS Year
FROM Employees;
Dans la table Employés, cette requête retourne la date d’embauche, le jour de l’embauche, le jour de la semaine d’embauche, le mois d’embauche et l’année d’embauche pour chaque employé. Notez que la fonction WeekDay() retourne une valeur numérique qui indique le jour de la semaine.
Fonction DatePart()
SELECT * FROM Employees
WHERE DatePart("yyyy", BirthDate) < 1960;
À partir de la table Employees, cette requête retourne tous les employés nés avant l’année 1960. La fonction DatePart() peut être utilisée pour extraire la partie de la date spécifiée, telle que le jour, le mois ou l’année.
Fonction DateDiff()
SELECT EmployeeID, FirstName, BirthDate,
DateDiff("yyyy", BirthDate, Date()) AS Age
FROM Employees;
À partir de la table Employees, cette requête retourne l’ID d’employé, le prénom, la date de naissance et l’âge de chaque employé. La fonction DateDiff() retourne la différence ou le décalage entre les deux valeurs de date spécifiées (en termes de jour, de mois, d’année ou d’unités de temps, telles que les heures, les minutes et les secondes).
Fonction DateAdd()
SELECT EmployeeID, FirstName, HireDate,
DateAdd("yyyy", 10, HireDate)
FROM Employees;
Dans la table Employés, cette requête retourne l’ID de l’employé, le prénom, la date d’embauche et la date à laquelle l’employé a terminé 10 ans de service auprès de l’entreprise. La fonction DateAdd() incrémente une date d’un nombre spécifié d’unités de temps, par exemple un jour, un mois ou une année, puis retourne la valeur résultante.
Vous pouvez ajouter une valeur numérique à une valeur de date directement. Procédez ainsi pour incrémenter la valeur de date d’un jour, comme dans l’exemple suivant :
SELECT Date() + 1 ;
Cette requête incrémente la date actuelle d’un jour, puis retourne la valeur de date résultante.
Fonction DateValue()
SELECT DateValue(« 20 Nov 2003 ») AS ValidDate ;
La fonction DateValue() vérifie si la chaîne d’entrée est une date valide. Si la chaîne d’entrée est reconnue comme une date valide, la date est renvoyée au format de date courte. Si la chaîne d’entrée n’est pas reconnue comme une date valide, l’instruction « Incompatibilité de type de données dans l’expression de critères » est retournée. La fonction DateValue() reconnaît divers formats de date, tels que mm jj aaaa, jj mm aaaa, jj mmm aaaa et jj mmm yyy hh :mm :ss long date format.
Fonction DateSerial()
SELECT DateSerial( 2003, 03, 1-1) ;
La fonction DateSerial() retourne la valeur de date pour les paramètres d’entrée spécifiés de l’année, du mois et du jour. Les paramètres d’entrée peuvent être des expressions qui impliquent des opérations arithmétiques. La fonction DateSerial() évalue les expressions dans les paramètres d’entrée avant de retourner la valeur de date résultante.
Cet exemple de requête retourne le dernier jour du mois de février pour l’année 2003. Le dernier paramètre d’entrée du jour avec la valeur 1 est décrémenté de 1. Le résultat est que le paramètre month est évalué à 2.
Utiliser des opérateurs de comparaison avec des valeurs de date
Vous pouvez utiliser les opérateurs de comparaison suivants pour comparer les valeurs de date dans les expressions et dans les requêtes :
- < (inférieur à)
- > (supérieur à)
- <= (inférieur ou égal à)
- >= (supérieur ou égal à)
- <> (n’est pas égal)
SELECT * FROM Employees
WHERE HireDate >= DateValue(" 10/01/1993")
AND HireDate <= DateValue("12/31/1993");
Cette requête utilise l’opérateur >de comparaison = et l’opérateur <de comparaison = pour vérifier si la date d’embauche de l’employé se situe dans la plage des deux dates spécifiées. Cette requête extrait les enregistrements de tous les employés qui ont été embauchés au cours du dernier trimestre de l’année civile 1993.
SELECT * FROM Employees
WHERE HireDate <> Date();
Cette requête utilise l’opérateur de comparaison des inégalités pour extraire les enregistrements de tous les employés dont la date d’embauche n’est pas égale à la date actuelle.
Fonction WeekdayName()
SELECT WeekdayName(1, False, 1) AS FirstWeekDayName ;
La fonction WeekdayName() retourne une chaîne qui indique le jour de la semaine, comme spécifié dans le premier paramètre. La chaîne du jour de la semaine retournée dépend du troisième paramètre. Ce paramètre définit le premier jour de la semaine. Le deuxième paramètre est défini sur False pour spécifier que le nom du jour de la semaine ne doit pas être abrégé.
Cet exemple de requête retourne la valeur Sunday comme premier jour de la semaine.
Fonction MonthName()
SELECT MonthName(1) ;
La fonction MonthName() retourne une chaîne qui indique le nom du mois pour le numéro de mois spécifié compris entre 1 et 12. Le paramètre d’entrée peut également être une expression, comme dans la requête suivante :
SELECT MonthName( DatePart(« m », Date()) ) ;
Cette requête retourne le nom du mois en cours.
References
Pour plus d’informations, cliquez sur les numéros d’article suivants pour afficher les articles dans la Base de connaissances Microsoft :