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 översikten.
Aktuell månad
Funktionen currentMonth
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
Funktionen getMonth
returnerar månaden, som ett heltal, baserat på en given 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
Funktionen currentYear
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
Funktionen getYear
returnerar året, som ett heltal, baserat på en given 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
Funktionen currentDayOfMonth
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
Funktionen getDayOfMonth
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
Funktionen occurs
jämför den angivna tidsstämpelfunktionen med en fast tidsperiod som ett booleskt värde.
Format
Funktionen 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 dokumentet för jämförelsefunktioner.{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 ett objekt 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 startdagen för PQL-körningen.
Exempel
Följande PQL-fråga kontrollerar om en person fyller år 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 Profile Query Language-översikten.