本指南描述Jira中的高级搜索(Advanced Search)
。当然你也可以使用快速搜索(quick search)和基本搜索(basic search)来进行搜索工作。
什么是高级搜索
高级搜索允许你使用结构化查询来搜索JIRA Issues。查询结果展示在Issues面板,并可以导出为表格或者其他格式文件。另外,还可以保存并订阅高级搜索。
当你进行高级搜索,实际上就是在使用JIRA Query Language(JQL)。
一条简单的JQL查询由域、操作符以及值或者方法组成。 (field,operator,values,functions)。例如,如下的一条语句——查询TEST项目的所有issues。
project = "TEST"
这个例子使用了
project
域,EQUALS
操作符,以及值"TEST"。
记住两个域是不能进行比较的。
JQL提供一些 SQL-like语法,例如 ORDER BY
这种SQL关键词,以及ISNULL()
这种SQL方法。但是JQL并不是一个数据库查询语言。例如,JQL并没有SELECT
表达式。
如何进行高级搜索
- 选择 问题 -> 搜索调出搜索栏。
- 如果有已经存在的查询语句,点击新建过滤器来重置搜索语句;
- 如果处于基本搜索状态,点击Advanced切换到高级搜索。
- 输入搜索语句。
- 点击搜索按钮来执行搜索语句。
执行文字搜索
对于以下域,可以使用CONTAINS
操作符来进行Lucene's text-searching
。
- Summary
- Description
- Environment
- Comments
- 某些自定义域,例如通过以下自建类型建立的自定义域
- 无限长文本域
- 小于255字符的文本域
- 只读文本域
语句text ~ "some words"
中的JQL域“text”,会搜索issue中的Summary、Description、Environment、Comments以及其他的自定义文本域。或者,也可以指定域进行搜索:
Summary ~ "some words" OR Description ~ "some words"
更多细节可以参考Performing Text Searches
使用自动补全
当你编写查询语句时,JIRA会根据你的输入提供补全建议。
补全列表会列出前15个匹配项,并按照字母表顺序排序。注意,函数参数不提供补全建议。
请注意:
- 如果发现没有自动补全,可能是JIRA管理员禁用了"JQL Auto-complete"功能;
- 如果不喜欢自动补全,可以在查询框下面点击 "Turn off auto-complete" 关闭。
并不是所有域都支持自动补全。查看field帮助来确定哪些域支持自动补全。
在高级搜索和简单搜索中切换
一般的,通过简单搜索
创建的查询可以转换为高级搜索
,并且可再转换回去。但是通过高级搜索
创建的语句却不一定能转换为简单搜索
,例如:
- 查询中包含
'OR'
操作符(注意,虽然'IN'
的效果和'OR'
相似,但包含'IN'
操作符的语句可以被转换为简单搜索,例如project in (A, B)
; - 查询中包含
'NOT'
操作符; - 查询中包含
'EMPTY'
操作符; - 查询中包含比较操作符:!=, IS, IS NOT, >, >=, <, <=;
- 语句中的域和值所关联的项目没有被显式声明。
设定操作符优先级
可以在复杂的JQL语句中使用括号来提高操作符优先级。(此段内容简单,略去不翻译)
关键词指南
关键词列表:
网友评论