Les fonctions de date et d’heure sont utilisées pour effectuer des opérations de date et d’heure sur des valeurs dans . Profile Query Language (PQL). Vous trouverez plus d’informations sur les autres fonctions PQL dans la section Profile Query Language aperçu.
La fonction currentMonth
renvoie le mois en cours sous la forme d’un entier.
Format
currentMonth()
Exemple
La requête PQL suivante vérifie si le mois de naissance de la personne est le mois en cours.
person.birthMonth = currentMonth()
La fonction getMonth
renvoie le mois, sous la forme d’un entier, en fonction d’un horodatage donné.
Format
{TIMESTAMP}.getMonth()
Exemple
La requête PQL suivante vérifie si le mois de naissance de la personne est le mois de juin.
person.birthdate.getMonth() = 6
La fonction currentYear
renvoie l’année en cours sous la forme d’un entier.
Format
currentYear()
Exemple
La requête PQL suivante vérifie si le produit a été vendu lors de l’année en cours.
product.saleYear = currentYear()
La fonction getYear
renvoie l’année, sous la forme d’un entier, en fonction d’un horodatage donné.
Format
{TIMESTAMP}.getYear()
Exemple
La requête PQL suivante vérifie si l’année de naissance de la personne est 1991, 1992, 1993, 1994 ou 1995.
person.birthday.getYear() in [1991, 1992, 1993, 1994, 1995]
La fonction currentDayOfMonth
renvoie le jour du mois en cours sous la forme d’un entier.
Format
currentDayOfMonth()
Exemple
La requête PQL suivante vérifie si le jour de naissance de la personne est le jour du mois en cours.
person.birthDay = currentDayOfMonth()
La fonction getDayOfMonth
renvoie le jour, sous la forme d’un entier, en fonction d’un horodatage donné.
Format
{TIMESTAMP}.getDayOfMonth()
Exemple
La requête PQL suivante vérifie si l’article a été vendu au cours des 15 premiers jours du mois.
product.sale.getDayOfMonth() <= 15
La fonction occurs
compare la fonction d’horodatage donnée à une période fixe.
Format
La fonction occurs
peut être rédigée dans l’un des formats suivants :
{TIMESTAMP} occurs {COMPARISON} {INTEGER} {TIME_UNIT} {DIRECTION} {TIME}
{TIMESTAMP} occurs {DIRECTION} {TIME}
{TIMESTAMP} occurs (on) {TIME}
{TIMESTAMP} occurs between {TIME} and {TIME}
Argument | Description |
---|---|
{COMPARISON} |
Opérateur de comparaison. Peut être l’un des opérateurs suivants : > , >= , < , <= , = , != . Pour plus d’informations sur les fonctions de comparaison, consultez le document sur les fonctions de comparaison. |
{INTEGER} |
Entier non négatif. |
{TIME_UNIT} |
Unité de temps. Peut être l’un des mots suivants : millisecond(s) , second(s) , minute(s) , hour(s) , day(s) , week(s) , month(s) , year(s) , decade(s) , century , centuries , millennium , millennia . |
{DIRECTION} |
Préposition décrivant à quel moment comparer la date. Peut être l’un des mots suivants : before , after , from . |
{TIME} |
Il peut s’agir d’un littéral d’horodatage (today , now , yesterday , tomorrow ), d’une unité de temps relative (this , last ou next suivi d’une unité de temps) ou d’un attribut d’horodatage. |
L’utilisation du mot on
est facultative. Il sert à améliorer la lisibilité de certaines combinaisons, comme timestamp occurs on date(2019,12,31)
.
Exemple
La requête PQL suivante vérifie si l’article a été vendu la semaine précédente.
product.saleDate occurs last week
La requête PQL suivante vérifie si l’article a été vendu entre le 8 janvier 2015 et le 1er juillet 2017.
product.saleDate occurs between date(2015, 1, 8) and date(2017, 7, 1)
now
est un mot réservé qui représente l’horodatage de l’exécution PQL.
Exemple
La requête PQL suivante vérifie si un article a été vendu il y a exactement trois heures.
product.saleDate occurs = 3 hours before now
today
est un mot réservé qui représente l’horodatage du début du jour de l’exécution PQL.
Exemple
La requête PQL suivante vérifie si l’anniversaire d’une personne était il y a trois jours.
person.birthday occurs = 3 days before today
Maintenant que vous en savez plus sur les fonctions de date et d’heure, vous pouvez les utiliser dans vos requêtes PQL. Pour plus d’informations sur les autres fonctions PQL, consultez la présentation du langage de requête de profil.