在项目管理中,信息就是生产力,而精准获取信息是效率的关键。Jira 查询语言(JQL)是项目管理者的利器,不仅能够帮助你快速定位数据,还可以通过灵活组合查询条件来洞察项目全貌。在 JQL 入门篇 中,我们介绍了 JQL 的基础语法和实用技巧,不少读者反馈,这些知识解决了实际问题,非常有帮助。
今天,我们更进一步,聚焦那些稍微复杂、但非常有用的高级 JQL 查询技巧,让你的项目管理事半功倍。
项目管理中,经常需要关注临近截止日期或已经逾期的任务。以下查询可以帮助你快速找到这些事务:
due <= startOfDay() AND resolution = Unresolved
解释:
due <= startOfDay():筛选截止日期在今天或更早的事务。
resolution = Unresolved:确保只显示未解决的事务。
需求变更或任务升级后,跟踪优先级发生变化的任务十分重要:
priority CHANGED AFTER startOfWeek()
解释:
CHANGED AFTER startOfWeek():查询本周内优先级发生过变化的事务。
还可以更精细查询优先级更新到最高的事务:CHANGED TO HIGHEST。
应用:结合自动化规则,可以设置提醒或更新经办人,确保事务及时响应。
有些任务因为各种原因未能在计划内完成,而滞留在多个 Sprints 中。使用以下 JQL 可以快速定位:
sprint in openSprints() AND sprint in closedSprints()
解释:
sprint in openSprints():查询当前活跃 Sprints 中的事务。
sprint in closedSprints():查询已完成/关闭 Sprints 中的事务。
模糊查询在处理长文本或描述字段时非常有用。例如,查询标题或描述字段中包含“性能优化”的事务:
text ~ "性能优化"
textfields ~ "性能优化" (Jira Cloud)
提示:在需求分析或 QA 场景中,使用模糊查询可以快速找到相关事务。
如果需要追踪事务的历史状态,比如曾经被关闭但后来重新打开的事务,可以这样写:
status WAS Closed AND status = Reopened
应用:适用于质量追踪和回归测试场景。
当你需要排除某些特定标签时,比如只关注非 Research 的事务,可以使用:
labels NOT IN ("Research")
解释:
筛选标签中不包含 "Research"
的事务。
不包含未打标签的事务,如果你也需要无标签的事务,那么追加:OR labels IS EMPTY。
三、组合 JQL 提升管理效率
如果你管理多个团队或部门的项目,可以通过以下 JQL 快速查看某些特定事务:
project IN (项目A, 项目B)
AND assignee IN (团队成员A, 团队成员B)
AND priority >= High
解释:筛选出特定项目中,高优先级且由某些成员负责的事务。
通过 Parent-Child 关系,追踪某个需求的所有子事务状态:
parent = IPD-1
AND statusCategory != Done
应用:适合用来跟踪复杂项目的需求拆解与落地情况。
JQL 的真正价值在于将海量数据转化为具体可行的见解,无论是项目经理还是开发团队,都能从精准查询中受益。通过学习和实践高级 JQL,你不仅能够快速找到事务,还可以发现潜在风险,优化资源分配,甚至实现持续改进。
如果你有任何疑问或特别的 JQL 查询需求,欢迎留言交流!此外,如果你对 JQL 的应用有独到见解,也欢迎分享。让我们一起探索更高效的项目管理方式。
作者简介:YY哥
专注精益产品开发、敏捷项目管理、流程优化、IT 服务管理 和 DevOps 等领域
YY Brother
Atlassian Solution Consultant|Atlassian Certified Expert|ACL
Cloze Technology
Hangzhou
73 accepted answers
0 comments