Fonctions de date et d’heure
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 Profile Query Language présentation.
Current month
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()
Get month
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
Current year
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()
Get year
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]
Current day of month
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()
Get day of month
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
Occurs
La fonction occurs
compare la fonction d’horodatage donnée à une période fixe sous la forme d’une valeur booléenne.
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}
{COMPARISON}
>
, >=
, <
, <=
, =
, !=
. Pour plus d’informations sur les fonctions de comparaison, consultez le document sur les fonctions de comparaison.{INTEGER}
{TIME_UNIT}
millisecond(s)
, second(s)
, minute(s)
, hour(s)
, day(s)
, week(s)
, month(s)
, year(s)
, decade(s)
, century
, centuries
, millennium
, millennia
.{DIRECTION}
before
, after
, from
.{TIME}
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.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
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
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
Étapes suivantes
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.