本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
时间表表达式参考
使用这些参考表为您的计划查询构造计划表达式。所有时间均采用 UTC。
Cron 表达式语法
格式:cron(minute hour day-of-month month day-of-week year)
| 使用场景 | Cron 表达式 | 说明 | 何时使用 |
|---|---|---|---|
| 每日日程安排 | cron(0 9 * * ? *) |
世界标准时间每天上午 9:00 | 每日报告 |
cron(0 */6 * * ? *) |
每 6 小时(UTC 时间 00:00、06:00、12:00、18:00) | 频繁监控 | |
cron(30 2 * * ? *) |
世界标准时间每天凌晨 2:30 | Off-peak 分析 | |
| 营业时间 | cron(0 9-17 ? * MON-FRI *) |
UTC 周一至周五上午 9 点至下午 5 点每小时一班 | 业务监控 |
cron(0 18 ? * MON-FRI *) |
世界标准时间工作日下午 6:00 | 工作日结束 | |
cron(0 8,12,17 ? * MON-FRI *) |
UTC 工作日上午 8 点、中午和下午 5 点 | 关键营业时间 | |
| 每周日程安排 | cron(0 12 ? * SUN *) |
世界标准时间每周日中午 | 每周摘要 |
cron(0 9 ? * MON *) |
世界标准时间每周一上午 9:00 | 本周开始报告 | |
cron(0 23 ? * FRI *) |
世界标准时间每周五晚上 11:00 | 周末大扫除 | |
| 每月日程表 | cron(0 0 1 * ? *) |
世界标准时间每个月的第一天午夜 | 月度报告 |
cron(0 9 L * ? *) |
世界标准时间每个月的最后一天上午 9:00 | 月末处理 | |
cron(0 10 1 1,4,7,10 ? *) |
每个季度的第一天世界标准时间上午 10:00 | 季度分析 | |
| 高频 | cron(*/15 * * * ? *) |
每 15 分钟一次 | Real-time 监控 |
cron(0,30 * * * ? *) |
每 30 分钟(在 00:00 和 30 分) | 经常检查 | |
cron(0 */2 * * ? *) |
每 2 小时 | 定期间隔 | |
| 特殊案例 | cron(30 8 1 1 ? *) |
世界标准时间 1 月 1 日上午 8:30 | 年度报告 |
cron(0 6 * * SAT,SUN *) |
世界标准时间周末上午 6:00 | 周末处理 | |
cron(0 0 ? * MON#1 *) |
每个月的第一个星期一午夜 UTC | 月度计划 |
Cron 表达式字段参考
| 字段 | 值 | 通配符 | 示例 |
|---|---|---|---|
| 分钟(第 1 分钟) | 0-59 | * , - / |
0(每小时),*/15(每 15 分钟),0,30(每小时两次) |
| 小时(第 2 次) | 0-23 | * , - / |
9(上午9点),*/2(每2小时一次),9-17(营业时间) |
| Day-of-month (第 3 个) | 1-31,L,W | * , - / ? |
1(第 1 天)、L(最后一天)、?(使用工作日时) |
| 月(第 4 个) | 1-12 或 JAN-DEC | * , - / |
1(一月),JAN,1,4,7,10(每季度) |
| Day-of-week (第 5 名) | 1-7 或 SUN-SAT | * , - / ? # L |
MON-FRI(平日),SUN,MON#1(第一个星期一) |
| 年份(第 6 年) | 1970-2199 | * , - / |
*(每年),2024(特定年份),2024-2026(范围) |
通配符和特殊表达式
*(星号)-
匹配该字段中的所有值。示例:
*在小时字段中表示每小时。 ?(问号)-
没有具体值。如果指定了其他选项,则在月中某一天或一周中的某一天使用。示例:指定星期几时,以月
?中的某一天为单位使用MON-FRI。 -(短划线)-
值的范围。示例:
MON-FRI(周一至周五),9-17(上午 9 点至下午 5 点)。 ,(逗号)-
多个特定值。示例:
MON,WED,FRI(星期一、星期三、星期五),8,12,17(上午 8 点、中午、下午 5 点)。 /(斜线)-
步长值或增量。示例:
0/15以分钟为单位表示从第 0 分钟(0、15、30、45)开始每 15 分钟一次。*/2以小时为单位表示每 2 小时一次。 L(最后)-
一个月的最后一天或工作日的最后一次出现。示例:
L以月日表示本月的最后一天。FRIL表示本月的最后一个星期五。 W(工作日)-
最近的工作日。示例:
15W表示距离当月 15 日最近的工作日。 #(第 n 次出现)-
本月工作日第 n 次出现。示例:
MON#1表示每月的第一个星期一,FRI#2表示每月的第二个星期五。
常见模式和最佳实践
-
对于业务应用程序:使用
MON-FRI工作时间(例如9-17)以避免在周末或非工作时间运行查询。 -
对于高频监控:使用增量,例如
*/15(每 15 分钟),但要注意查询并发限制。 -
为了提高资源效率:使用 UTC 等清晨时间在非高峰时段安排资源密集型查询。
2-6 -
对于月度报告:
L用于每月的最后一天或特定日期(例如1第一天),以确保时间一致。