Funzioni data e ora
Le funzioni di data e ora vengono utilizzate per eseguire operazioni di data e ora su valori compresi in Profile Query Language (PQL) Ulteriori informazioni su altre funzioni PQL sono disponibili nella Profile Query Language panoramica.
Mese corrente
Il currentMonth
restituisce il mese corrente come numero intero.
Formato
currentMonth()
Esempio
La query PQL seguente verifica se il mese di nascita della persona è il mese corrente.
person.birthMonth = currentMonth()
Ottieni mese
Il getMonth
funzione restituisce il mese, come numero intero, in base a una data marca temporale.
Formato
{TIMESTAMP}.getMonth()
Esempio
La seguente query PQL verifica se il mese di nascita della persona è giugno.
person.birthdate.getMonth() = 6
Anno corrente
Il currentYear
funzione restituisce l’anno corrente come numero intero.
Formato
currentYear()
Esempio
La query PQL seguente verifica se il prodotto è stato venduto nell’anno corrente.
product.saleYear = currentYear()
Ottieni anno
Il getYear
funzione restituisce l’anno, come numero intero, in base a una data marca temporale.
Formato
{TIMESTAMP}.getYear()
Esempio
La seguente query PQL verifica se l’anno di nascita della persona cade nel 1991, 1992, 1993, 1994 o 1995.
person.birthday.getYear() in [1991, 1992, 1993, 1994, 1995]
Giorno del mese corrente
Il currentDayOfMonth
funzione restituisce il giorno corrente del mese come numero intero.
Formato
currentDayOfMonth()
Esempio
La query PQL seguente verifica se il giorno di nascita della persona corrisponde al giorno corrente del mese.
person.birthDay = currentDayOfMonth()
Ottieni giorno del mese
Il getDayOfMonth
funzione restituisce il giorno, come numero intero, in base a una data marca temporale.
Formato
{TIMESTAMP}.getDayOfMonth()
Esempio
La query PQL seguente verifica se l'articolo è stato venduto nei primi 15 giorni del mese.
product.sale.getDayOfMonth() <= 15
Si verifica
Il occurs
confronta la funzione di marca temporale specificata con un periodo di tempo fisso.
Formato
Il occurs
può essere scritta utilizzando uno dei seguenti formati:
{TIMESTAMP} occurs {COMPARISON} {INTEGER} {TIME_UNIT} {DIRECTION} {TIME}
{TIMESTAMP} occurs {DIRECTION} {TIME}
{TIMESTAMP} occurs (on) {TIME}
{TIMESTAMP} occurs between {TIME} and {TIME}
{COMPARISON}
>
, >=
, <
, <=
, =
, !=
. Ulteriori informazioni sulle funzioni di confronto sono disponibili nella documento sulle funzioni di confronto.{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
), un'unità di tempo relativa (una delle this
, last
, o next
seguito da un'unità di tempo), o un attributo timestamp.on
è facoltativo. È lì per migliorare la leggibilità di alcune combinazioni, come timestamp occurs on date(2019,12,31)
.Esempio
La query PQL seguente verifica se l'articolo è stato venduto la settimana scorsa.
product.saleDate occurs last week
La query PQL seguente verifica se un articolo è stato venduto tra l’8 gennaio 2015 e il 1 luglio 2017.
product.saleDate occurs between date(2015, 1, 8) and date(2017, 7, 1)
Subito
now
è una parola riservata che rappresenta la marca temporale dell’esecuzione PQL.
Esempio
La query PQL seguente verifica se un articolo è stato venduto esattamente tre ore prima.
product.saleDate occurs = 3 hours before now
Oggi
today
è una parola riservata che rappresenta la marca temporale dell’inizio del giorno dell’esecuzione PQL.
Esempio
La seguente query PQL controlla se il compleanno di una persona è stato tre giorni fa.
person.birthday occurs = 3 days before today
Passaggi successivi
Dopo aver appreso le funzioni di data e ora, puoi utilizzarle all’interno delle query PQL. Per ulteriori informazioni su altre funzioni PQL, leggere Panoramica sulla lingua delle query di profilo.