Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
使用单行文本(字符串)、多行文本(PlainText)和格式文本(HTML)字段按关键字、ID 或空文本字段筛选工作项。 如果查询返回时间过长,请参阅 “创建查询”最佳做法。
Prerequisites
| Category | Requirements |
|---|---|
| 访问级别 | - 若要查看和运行共享查询:项目成员。 - 要添加并保存共享查询:至少具有基本访问权限。 |
| Permissions | 对于要添加查询的文件夹,请将参与权限设置为允许。 默认情况下,“参与者”组没有此权限。 |
Note
对公共项目具有“利益干系人”访问权限的用户可以完全访问查询功能,就像具有“基本”访问权限的用户一样。 有关详细信息,请参阅利益干系人访问快速参考。
| Category | Requirements |
|---|---|
| 访问级别 | - 若要查看和运行共享查询:项目成员。 - 要添加并保存共享查询:至少具有基本访问权限。 |
| Permissions | 对于要添加查询的文件夹,请将参与权限设置为允许。 默认情况下,“参与者”组没有此权限。 |
支持的运算符和宏
使用为文本和富文本字段列出的运算符和宏。
数据类型
支持的运算符和宏
格式文本 (HTML)
多行文本字符串(纯文本)
Contains Words、Does Not Contain Words、Is Empty1、Is Not Empty1
单一文本(字符串)
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, Does Not Contain, In, Not In, In Group, Not In Group, Was Ever
宏:[Any]在“工作项类型”字段@Project和 2 中有效,对“团队项目”字段有效。
ID
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever
宏:@Follows、@MyRecentActivity、@RecentMentions、@RecentProjectActivity在使用ID 字段和In、Not In运算符时有效。
@Project
2,在 “团队项目” 字段中有效。
“状态”和“工作项类型”字段
= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, Does Not Contain, In, Not In, In Group, Not In Group, Was Ever
宏:[Any] 在这两个字段中均有效。
Note
- Azure DevOps Server 2020 及更高版本支持这些
Is Empty和Is Not Empty运算符。 - 系统默认基于当前项目进行筛选。 有关详细信息,请参阅跨项目查询。
将 Contains Words 用于字符串匹配
如果要筛选字符串匹配项,首选 Contains Words 运算符而不是 Contains。
Contains Words 使用全文索引,通常更快。 文本字符串限制为 100 个字符。
Contains操作员运行表扫描;速度较慢,消耗更多的 CPU 资源,这可能会影响速率限制。
Note
运算符 Contains Words 使用 SQL 全文搜索索引。 将新值保存到长文本字段时,SQL Server:
- 将短语拆分为单词
- 删除常见的停用词(例如,“a” 或 “is”)
- 将单词转换为其常见词干(例如,跑步→跑)
- 将生成的关键字存储在索引中
使用 Contains Words 搜索索引的查询,为长文本字段提供更快的结果。 有关详细信息和服务器/排序规则要求,请参阅 查询字段、运算符、值和变量 - 全文和部分单词搜索。
使用通配符的关键字或短语查询
使用 Contains 或 Contains Words 查找部分或完全匹配字词或短语的项目。
选择 Contains 或 Does Not Contain 搜索精确匹配项或部分匹配项。 选择 Contains Words 或 Does Not Contain Words 以使用全文索引和通配符 *。
例如,Contains Words与inform*匹配inform、information和informational。
Tip
要了解 AND/OR 子句的分组方式,请参阅对子句进行分组。 若要查看查询的 WIQL 语法,请安装 WIQL 查询编辑器扩展,以便查看任何查询编辑器条目的 WIQL 版本。
查询特定字词而不是其他字词
使用 Contains Words 和 Does Not Contain Words 包含确切的字词或短语,并排除其他人。 将这些运算符组合起来并使用 * 进行通配符匹配。
以下示例显示了包含工作“阶段”但不包括“Phasor”的筛选器。
Note
某些保留的 SQL 关键字(例如 WHERE、THEN 和 AND)在作为独立搜索词与 Contains Words 或 Does Not Contain Words 组合使用时不会返回结果。
未定义的字段值查询
使用“equals”运算符 = 查找具有未定义(空白)字段值的工作项,并将值留空。 例如,以下筛选器列出活动字段为空的所有任务。
若要查找字段不为空的项目,请使用“not”运算符 <> 并将值留空。
为空或不为空的 HTML 字段查询
使用 Is Empty 或 Is Not Empty 与 HTML 字段一起,列出具有空或非空富文本字段的工作项。 不为这些运算符指定值。
特殊字符筛选器
筛选 URL 或短语时,使用反斜杠转义特殊字符,例如 / 或 -。
针对URL的筛选
- 查询:
Title ~ "https:\/\/example.com\/path-to-resource" - 结果:返回具有确切 URL 的工作项。
- 查询:
筛选带有短划线的短语:
- 查询:
Title ~ "feature-update\-2023" - 结果:返回包含带有短划线的确切短语的工作项。
- 查询:
Note
无法查询未附加任何标记的工作项。 若要点赞此功能请求,请访问开发人员社区:可以搜索空标签。
基于类别的查询
若要按类别进行筛选,请使用 In Group 运算符。 以下示例返回分配给团队成员和 Bug 类别的当前项目中的项目。
“需求”或“任务”类别中显示哪些项?
每个进程的默认工作项类型分配:
| Process | 要求类别 | 任务类别 |
|---|---|---|
| 基本 | Issue | Task |
| Agile | 用户情景 | Task |
| Scrum | 产品积压工作项,Bug | Task |
| CMMI | Requirement | Task |
团队可以选择 Bug 工作项类型是否显示在“需求”或“任务”类别中。 请参阅显示积压工作 (backlog) 和工作板块中的 Bug。 若要将自定义工作项类型添加到积压工作,请参阅 “添加或修改工作项类型”。
查询你正在关注的工作项
使用 @Follows 宏与 ID 字段以及 In 运算符可列出所关注的工作项(如果需要,跨项目)。
查询最近的工作项活动
使用这些宏根据最近的活动列出项目:
-
@MyRecentActivity:最近查看或修改的项目。 -
@RecentMentions:最近 30 天内带有@mention的项目。 -
@RecentProjectActivity:最近在项目中创建或修改的项目。
将 ID 字段用于 In 或 Not In.
大多数工作项类型的通用字段
下表描述了查询中使用的常见字段。 ID 唯一标识工作项。 使用 Title 区分相同类型的项。 说明和其他富文本字段提供详细的实现信息。 创建后,可以修改除 ID 以外的所有字段;系统在创建工作项时分配 ID。
Note
系统为类型 PlainText 和 HTML 的长文本字段编制索引,以进行全文搜索,包括 Title、Description 和 Steps to Repro。 有关适用于本地 Azure DevOps 的详细信息和服务器/排序规则要求,请参阅 查询字段、运算符、值和变量 - 全文和部分词搜索。
字段名称
Description
工作项类型
验收条件 1
在可以关闭 bug 或产品积压工作项之前必须满足的条件的说明。
在工作开始之前,记录明确的验收标准,以便团队和客户分享期望。 验收条件有助于定义验收测试,并确认项目是否已完成。
引用名称=Microsoft.VSTS.Common.AcceptanceCriteria,数据类型=HTML
bug、长篇故事、功能、产品积压工作项 (Scrum)
说明 1,2
使用此字段提供有关工作项的深层信息。
引用名称=System.Description,数据类型=HTML
All
ID
分配给工作项的唯一标识符。 ID 在项目集合中的各个项目之间是唯一的。
引用名称=System.Id,数据类型=整数
All
重现步骤(或重现的步骤)1
重现意外行为所需的步骤。 捕获足够的详细信息,以便其他人可以重现和验证修补程序。
引用名称=Microsoft.VSTS.TCM.ReproSteps,数据类型=HTML
Bug
Resolution
介绍了解决障碍的方式。
引用名称=Microsoft.VSTS.Common.Resolution,数据类型=HTML
障碍(Scrum)
系统信息1
有关与 bug 或反馈相关的软件和系统配置的信息。
引用名称=Microsoft.VSTS.TCM.SystemInfo,数据类型=HTML
Bug、代码评审请求、反馈请求
团队项目
工作项所属的项目。 将此字段添加到查询,以便按一个或多个项目进行筛选。 有关详细信息,请参阅 跨项目查询。
引用名称=System.TeamProject,数据类型=字符串
All
Title
总结工作项并帮助团队成员将其与其他人员区分开来的简短说明。
引用名称=System.Title,数据类型=字符串
All
工作项类型
工作项类型名称,由创建项目时使用的过程定义。 有关详细信息,请参阅关于流程和流程模板和添加或修改工作项类型。
若要按类别分配进行筛选,请使用 In Group 和 Not In Group 运算符并从下拉列表中选择一个类别。
引用名称=System.WorkItemType,数据类型=字符串
All
相关内容
REST API
要以编程方式与查询交互,请参阅以下 REST API 资源之一: