日期和时间函数
用于提取日期/时间组成部分和执行日期运算的函数。
使用时间戳
在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)从时间戳中提取年份。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | year(StartTime) → 2024 | |||
| 另请参阅 |
month
(timestamp)从时间戳中提取月份(1-12)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | month(StartTime) → 3 三月 | |||
| 另请参阅 |
day
(timestamp)从时间戳中提取日期(1-31)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | day(StartTime) → 18 | |||
| 另请参阅 |
hour
(timestamp)从时间戳中提取小时(0-23)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | hour(StartTime) → 14 下午2点 | |||
| 另请参阅 |
minute
(timestamp)从时间戳中提取分钟(0-59)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | minute(StartTime) → 30 | |||
| 另请参阅 |
second
(timestamp)从时间戳中提取秒(0-59)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | second(StartTime) → 45 | |||
| 另请参阅 |
dayOfWeek
(timestamp)返回时间戳对应的星期几,其中1表示星期一,7表示星期日。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | dayOfWeek(StartTime) → 1 星期一 | |||
| 另请参阅 |
dayName
(timestamp)返回时间戳对应的星期名称。
| 参数 |
| |||
| 返回值 | 字符串 | |||
| 示例 | dayName(StartTime) → 星期一 | |||
| 另请参阅 |
monthName
(timestamp)返回时间戳对应的月份名称。
| 参数 |
| |||
| 返回值 | 字符串 | |||
| 示例 | monthName(StartTime) → 三月 | |||
| 另请参阅 |
quarter
(timestamp)返回时间戳对应的季度(1-4)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | quarter(StartTime) → 1 第1季度(1月至3月) | |||
| 另请参阅 |
weekOfYear
(timestamp)返回时间戳对应的ISO周数(1-53)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | weekOfYear(StartTime) → 12 2024年第12周 | |||
| 另请参阅 |
dayOfYear
(timestamp)返回时间戳对应的一年中的第几天(1-366)。
| 参数 |
| |||
| 返回值 | 数字 | |||
| 示例 | dayOfYear(StartTime) → 78 一年中的第78天(2024年3月18日) | |||
| 另请参阅 |
dateAdd
(timestamp, amount, unit)向时间戳添加指定时长。
| 参数 |
| |||||||||
| 返回值 | 数字 | |||||||||
| 示例 | dateAdd(StartTime, 7, "day") → 时间戳加7天 dateAdd(StartTime, -1, "month") → 时间戳减1个月 dateAdd(1710766245000, 1, "day") → 1710852645000 在2024年3月18日的基础上加1天 | |||||||||
| 另请参阅 |
dateDiff
(startTimestamp, endTimestamp, unit)按指定单位计算两个时间戳之间的差值。
| 参数 |
| |||||||||
| 返回值 | 数字 | |||||||||
| 示例 | dateDiff(StartTime, EndTime, "minute") → 150 持续分钟数 dateDiff(StartTime, EndTime, "hour") → 2.5 | |||||||||
| 备注 | 返回表示精确差值的十进制数。 | |||||||||
| 另请参阅 |
isBusinessDay
(timestamp)检查时间戳是否落在工作日(周一至周五)。
| 参数 |
| |||
| 返回值 | 布尔值 | |||
| 示例 | isBusinessDay(StartTime) → true 如果StartTime落在工作日 | |||
| 另请参阅 |
workingDaysBetween
(startTimestamp, endTimestamp)计算两个时间戳之间的工作日(周一至周五)天数。
| 参数 |
| ||||||
| 返回值 | 数字 | ||||||
| 示例 | workingDaysBetween(StartTime, EndTime) → 两个日期之间的工作日天数 workingDaysBetween(1710766245000, 1711371045000) → 5 2024年3月18日(周一)至3月25日(周一)之间有5个工作日 | ||||||
| 备注 | 近似的后端/工作日历辅助函数。不计算节假日,仅排除周末。 | ||||||
| 另请参阅 |
toUtc
(timestamp, offsetHours)通过减去时区偏移量,将本地时间戳转换为UTC。
| 参数 |
| ||||||
| 返回值 | 数字 | ||||||
| 示例 | toUtc(StartTime, 2) → StartTime减2小时 从UTC+2转换 toUtc(1710766245000, 2) → 1710759045000 将时间戳从UTC+2转换为UTC | ||||||
| 备注 | 目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。 | ||||||
| 另请参阅 |
toLocal
(timestamp, offsetHours)通过添加时区偏移量,将UTC时间戳转换为本地时间。
| 参数 |
| ||||||
| 返回值 | 数字 | ||||||
| 示例 | toLocal(StartTime, -5) → StartTime减5小时 转换为EST toLocal(1710766245000, -5) → 1710748245000 将UTC时间戳转换为EST(UTC-5) | ||||||
| 备注 | 目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。 | ||||||
| 另请参阅 |
convertTimezone
(timestamp, fromOffset, toOffset)将时间戳从一个时区转换为另一个时区。
| 参数 |
| |||||||||
| 返回值 | 数字 | |||||||||
| 示例 | convertTimezone(StartTime, 1, -5) → 时间戳调整-6小时 从CET转换为EST convertTimezone(1710766245000, 1, -5) → 1710744645000 从UTC+1转换为UTC-5 | |||||||||
| 备注 | 目前,时区转换仅支持以小时为单位的数字UTC偏移量,不支持IANA时区名称。 | |||||||||
| 另请参阅 |
相关主题
- 表达式概览:所有表达式函数。
优化流程,构建互联架构,掌控全局。
无需信用卡,也无需等待,即刻开始。将组织的实际工作方式转化为清晰、互联的流程设计。
构建流程架构,明确职责归属与管控措施,并在各层级统一角色分工。
开始免费试用,为流程治理、管理和持续改进建立可靠的统一基础。