Datum- och tidsfunktioner
Datum- och tidsfunktioner används för att utföra datum- och tidsåtgärder på värden inom Profile Query Language (PQL). Mer information om andra PQL-funktioner finns i Profile Query Language översikt.
Aktuell månad
The currentMonth
funktionen returnerar den aktuella månaden som ett heltal.
Format
currentMonth()
Exempel
Följande PQL-fråga kontrollerar om personens födelsemånad är den aktuella månaden.
person.birthMonth = currentMonth()
Få månad
The getMonth
returnerar månaden som ett heltal baserat på en viss tidsstämpel.
Format
{TIMESTAMP}.getMonth()
Exempel
Följande PQL-fråga kontrollerar om personens födelsemånad är i juni.
person.birthdate.getMonth() = 6
Aktuellt år
The currentYear
funktionen returnerar det aktuella året som ett heltal.
Format
currentYear()
Exempel
Följande PQL-fråga kontrollerar om produkten har sålts det aktuella året.
product.saleYear = currentYear()
Skaffa år
The getYear
funktionen returnerar året som ett heltal baserat på en viss tidsstämpel.
Format
{TIMESTAMP}.getYear()
Exempel
Följande PQL-fråga kontrollerar om personens födelseår infaller 1991, 1992, 1993, 1994 eller 1995.
person.birthday.getYear() in [1991, 1992, 1993, 1994, 1995]
Aktuell dag i månaden
The currentDayOfMonth
funktionen returnerar den aktuella dagen i månaden som ett heltal.
Format
currentDayOfMonth()
Exempel
Följande PQL-fråga kontrollerar om personens födelsedag matchar den aktuella dagen i månaden.
person.birthDay = currentDayOfMonth()
Hämta dag i månaden
The getDayOfMonth
funktionen returnerar dagen som ett heltal baserat på en given tidsstämpel.
Format
{TIMESTAMP}.getDayOfMonth()
Exempel
Följande PQL-fråga kontrollerar om artikeln har sålts inom de första 15 dagarna i månaden.
product.sale.getDayOfMonth() <= 15
Inträffar
The occurs
funktionen jämför den angivna tidsstämpelfunktionen med en fast tidsperiod.
Format
The occurs
kan skrivas med något av följande format:
{TIMESTAMP} occurs {COMPARISON} {INTEGER} {TIME_UNIT} {DIRECTION} {TIME}
{TIMESTAMP} occurs {DIRECTION} {TIME}
{TIMESTAMP} occurs (on) {TIME}
{TIMESTAMP} occurs between {TIME} and {TIME}
{COMPARISON}
>
, >=
, <
, <=
, =
, !=
. Mer information om jämförelsefunktionerna finns i jämförelsefunktionsdokument.{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
), en relativ tidsenhet (en av this
, last
, eller next
följt av en tidsenhet) eller ett tidsstämpelattribut.on
är valfritt. Det finns för att förbättra läsbarheten för vissa kombinationer, som timestamp occurs on date(2019,12,31)
.Exempel
Följande PQL-fråga kontrollerar om artikeln såldes förra veckan.
product.saleDate occurs last week
Följande PQL-fråga kontrollerar om ett objekt har sålts mellan 8 januari 2015 och 1 juli 2017.
product.saleDate occurs between date(2015, 1, 8) and date(2017, 7, 1)
Nu
now
är ett reserverat ord som representerar tidsstämpeln för PQL-körningen.
Exempel
Följande PQL-fråga kontrollerar om en artikel har sålts exakt tre timmar tidigare.
product.saleDate occurs = 3 hours before now
Idag
today
är ett reserverat ord som representerar tidsstämpeln för början av dagen för PQL-körningen.
Exempel
Följande PQL-fråga kontrollerar om en persons födelsedag var för tre dagar sedan.
person.birthday occurs = 3 days before today
Nästa steg
Nu när du har lärt dig om datum- och tidsfunktioner kan du använda dem i dina PQL-frågor. Mer information om andra PQL-funktioner finns i Profilfrågespråk - översikt.