日期和时间函数

日期和时间函数用于对Profile Query Language (PQL)中的值执行日期和时间操作。 有关其他PQL函数的详细信息,请参阅Profile Query Language overview

当月

currentMonth函数将当前月份返回为整数。

格式

currentMonth()

示例

以下PQL查询检查人员的出生月是否为当月。

person.birthMonth = currentMonth()

获得月

getMonth函数根据给定的时间戳以整数形式返回月份。

格式

{TIMESTAMP}.getMonth()

示例

以下PQL查询检查人员的出生月是否在6月。

person.birthdate.getMonth() = 6

本年度

currentYear函数将当前年份作为整数返回。

格式

currentYear()

示例

以下PQL查询会检查产品是否在当年销售。

product.saleYear = currentYear()

获取年份

getYear函数根据给定的时间戳以整数形式返回年份。

格式

{TIMESTAMP}.getYear()

示例

以下PQL查询检查该人的出生年度是否在1991、1992、1993、1994或1995年。

person.birthday.getYear() in [1991, 1992, 1993, 1994, 1995]

当月当天

currentDayOfMonth函数以整数形式返回当月的当天。

格式

currentDayOfMonth()

示例

以下PQL查询检查人员的出生日是否与当月的当天匹配。

person.birthDay = currentDayOfMonth()

获取月份

getDayOfMonth函数根据给定的时间戳以整数形式返回该日。

格式

{TIMESTAMP}.getDayOfMonth()

示例

以下PQL查询将检查该物料是否在当月的前15天内销售。

product.sale.getDayOfMonth() <= 15

发生

occurs函数将给定时间戳函数与固定时间段进行比较。

格式

occurs函数可以使用以下任一格式编写:

{TIMESTAMP} occurs {COMPARISON} {INTEGER} {TIME_UNIT} {DIRECTION} {TIME}
{TIMESTAMP} occurs {DIRECTION} {TIME}
{TIMESTAMP} occurs (on) {TIME}
{TIMESTAMP} occurs between {TIME} and {TIME}
参数 描述
{COMPARISON} 比较运算符。 可以是下列任何运算符:>>=<<==!=。 有关比较函数的详细信息,请参阅比较函数文档
{INTEGER} 非负整数。
{TIME_UNIT} 时间单位。 可以是以下任意单词:millisecond(s)second(s)minute(s)hour(s)day(s)week(s)month(s)year(s)decade(s)centurycenturiesmillenniummillennia
{DIRECTION} 描述何时将日期进行比较的预置。 可以是以下任意单词:beforeafterfrom
{TIME} 可以是时间戳文本(todaynowyesterdaytomorrow)、相对时间单位(thislastnext之一,后跟时间单位)或时间戳属性。
注意

使用单词on是可选的。 它可以提高某些组合(如timestamp occurs on date(2019,12,31))的可读性。

示例

以下PQL查询将检查该物料是否在上周出售。

product.saleDate occurs last week

以下PQL查询将检查2015年1月8日至2017年7月1日之间是否销售了某个项目。

product.saleDate occurs between date(2015, 1, 8) and date(2017, 7, 1)

现在

now 是表示PQL执行的时间戳的保留字。

示例

以下PQL查询会检查物料是否在三小时前售出。

product.saleDate occurs = 3 hours before now

今天

today 是一个保留字,表示PQL执行当日开始的时间戳。

示例

以下PQL查询会检查某人的生日是否在三天前。

person.birthday occurs = 3 days before today

后续步骤

现在,您已经了解了日期和时间功能,可以在PQL查询中使用它们。 有关其他PQL函数的详细信息,请阅读用户档案查询语言概述

在此页面上