本页内容

日期和时间函数

用于提取日期/时间组成部分和执行日期运算的函数。

使用时间戳

在ProcessMind中,时间戳以数字存储,表示自1970年1月1日(Unix纪元)以来经过的毫秒数。日期函数使用这些时间戳值。

常见用法

  • 提取日期部分:

    year(StartTime)       // 2024
    month(StartTime)      // 3 (March)
    day(StartTime)        // 15
  • 计算时长:

    dateDiff(StartTime, EndTime, "minute")
    dateDiff(StartTime, EndTime, "hour")
    dateDiff(StartTime, EndTime, "day")
  • 创建时间分组:

    bucket(hour(StartTime), 6, "Night", 12, "Morning", 18, "Afternoon", "Evening")
  • 为日期增加时间:

    dateAdd(StartTime, 7, "day")     // Add 7 days
    dateAdd(StartTime, -1, "month")  // Subtract 1 month

now

()

返回当前UTC时间戳,即从Unix纪元起经过的毫秒数。

返回值 数字
示例
now() → 1708963200000

当前时间戳

year

(timestamp)

从时间戳中提取年份。

参数
timestamp number 时间戳值
返回值 数字
示例
year(StartTime) → 2024
另请参阅

month

(timestamp)

从时间戳中提取月份(1-12)。

参数
timestamp number 时间戳值
返回值 数字
示例
month(StartTime) → 3

三月

另请参阅

day

(timestamp)

从时间戳中提取日期(1-31)。

参数
timestamp number 时间戳值
返回值 数字
示例
day(StartTime) → 18
另请参阅

hour

(timestamp)

从时间戳中提取小时(0-23)。

参数
timestamp number 时间戳值
返回值 数字
示例
hour(StartTime) → 14

下午2点

另请参阅

minute

(timestamp)

从时间戳中提取分钟(0-59)。

参数
timestamp number 时间戳值
返回值 数字
示例
minute(StartTime) → 30
另请参阅

second

(timestamp)

从时间戳中提取秒(0-59)。

参数
timestamp number 时间戳值
返回值 数字
示例
second(StartTime) → 45
另请参阅

dayOfWeek

(timestamp)

返回时间戳对应的星期几,其中1表示星期一,7表示星期日。

参数
timestamp number 时间戳值
返回值 数字
示例
dayOfWeek(StartTime) → 1

星期一

另请参阅

dayName

(timestamp)

返回时间戳对应的星期名称。

参数
timestamp number 时间戳值
返回值 字符串
示例
dayName(StartTime) → 星期一
另请参阅

monthName

(timestamp)

返回时间戳对应的月份名称。

参数
timestamp number 时间戳值
返回值 字符串
示例
monthName(StartTime) → 三月
另请参阅

quarter

(timestamp)

返回时间戳对应的季度(1-4)。

参数
timestamp number 时间戳值
返回值 数字
示例
quarter(StartTime) → 1

第1季度(1月至3月)

另请参阅

weekOfYear

(timestamp)

返回时间戳对应的ISO周数(1-53)。

参数
timestamp number 时间戳值
返回值 数字
示例
weekOfYear(StartTime) → 12

2024年第12周

另请参阅

dayOfYear

(timestamp)

返回时间戳对应的一年中的第几天(1-366)。

参数
timestamp number 时间戳值
返回值 数字
示例
dayOfYear(StartTime) → 78

一年中的第78天(2024年3月18日)

另请参阅

dateAdd

(timestamp, amount, unit)

向时间戳添加指定时长。

参数
timestamp number 起始时间戳
amount number 要添加的数量;可以为负数
unit string 单位:'year'、'month'、'day'、'hour'、'minute'、'second'
返回值 数字
示例
dateAdd(StartTime, 7, "day") → 时间戳加7天
dateAdd(StartTime, -1, "month") → 时间戳减1个月
dateAdd(1710766245000, 1, "day") → 1710852645000

在2024年3月18日的基础上加1天

另请参阅

dateDiff

(startTimestamp, endTimestamp, unit)

按指定单位计算两个时间戳之间的差值。

参数
startTimestamp number 开始时间戳
endTimestamp number 结束时间戳
unit string 单位:'day'、'hour'、'minute'、'second'
返回值 数字
示例
dateDiff(StartTime, EndTime, "minute") → 150

持续分钟数

dateDiff(StartTime, EndTime, "hour") → 2.5
备注

返回表示精确差值的十进制数。

另请参阅

isBusinessDay

(timestamp)

检查时间戳是否落在工作日(周一至周五)。

参数
timestamp number 要检查的时间戳
返回值 布尔值
示例
isBusinessDay(StartTime) → true

如果StartTime落在工作日

另请参阅

workingDaysBetween

(startTimestamp, endTimestamp)

计算两个时间戳之间的工作日(周一至周五)天数。

参数
startTimestamp number 开始时间戳
endTimestamp number 结束时间戳
返回值 数字
示例
workingDaysBetween(StartTime, EndTime) → 两个日期之间的工作日天数
workingDaysBetween(1710766245000, 1711371045000) → 5

2024年3月18日(周一)至3月25日(周一)之间有5个工作日

备注

近似的后端/工作日历辅助函数。不计算节假日,仅排除周末。

另请参阅

toUtc

(timestamp, offsetHours)

通过减去时区偏移量,将本地时间戳转换为UTC。

参数
timestamp number 本地时间戳
offsetHours number 时区偏移量(小时)
返回值 数字
示例
toUtc(StartTime, 2) → StartTime减2小时

从UTC+2转换

toUtc(1710766245000, 2) → 1710759045000

将时间戳从UTC+2转换为UTC

备注

目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。

另请参阅

toLocal

(timestamp, offsetHours)

通过添加时区偏移量,将UTC时间戳转换为本地时间。

参数
timestamp number UTC时间戳
offsetHours number 时区偏移量(小时)
返回值 数字
示例
toLocal(StartTime, -5) → StartTime减5小时

转换为EST

toLocal(1710766245000, -5) → 1710748245000

将UTC时间戳转换为EST(UTC-5)

备注

目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。

另请参阅

convertTimezone

(timestamp, fromOffset, toOffset)

将时间戳从一个时区转换为另一个时区。

参数
timestamp number 要转换的时间戳
fromOffset number 源时区偏移量(小时)
toOffset number 目标时区偏移量(小时)
返回值 数字
示例
convertTimezone(StartTime, 1, -5) → 时间戳调整-6小时

从CET转换为EST

convertTimezone(1710766245000, 1, -5) → 1710744645000

从UTC+1转换为UTC-5

备注

目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。

另请参阅

相关主题

优化流程,构建互联架构,掌控全局。

无需信用卡,也无需等待,即刻开始。将组织的实际工作方式转化为清晰、互联的流程设计。

构建流程架构,明确职责归属与管控措施,并在各层级统一角色分工。

开始免费试用,为流程治理、管理和持续改进建立可靠的统一基础。