查询Azure Boards中的字段、运算符和宏

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019 |TFS 2018

可在此处找到每种字段数据类型、查询运算符和查询宏的详细说明。 某些数据类型、运算符和宏仅对指定的 Azure DevOps Server 或 Team Foundation Server (TFS) 版本有效。

有关每种数据类型支持的查询任务和运算符和宏的快速参考,请参阅 查询快速参考。 有关构造 高性能查询的 提示,另请参阅创建高性能查询的指南。

查询字段数据类型和值

为字段指定的值必须符合该字段的数据类型。 下表列出支持的数据类型:

注意

对于Azure Boards云服务,数据类型对应于“进程>字段”页上为 字段列出的数据类型。 对于本地部署,数据类型对应于 type 分配给 FIELD 定义的属性。 有关详细信息,请参阅 工作项字段和字段属性

数据类型

描述

布尔值

指定采用 True/False 值的字段。

日期/时间日期/时间

可在其中指定变量(如 或 @Today-1@Today或值(如 2012 年 1 月 1 日)的日期字段。 在为个人配置文件设置的日期模式中输入日期。 (有关详细信息 ,请参阅设置个人首选项 。) 有关查询示例,请参阅 按日期or@CurrentIteration查询

对于 WIQL 查询,还可以在协调世界时 (UTC) 模式中指定日期。 有关详细信息,请参阅 工作项查询语言 (WIQL) 语法

DoubleDecimal

一个实数,如 0.2 或 3.5。 有关查询示例,请参阅 按数值字段查询

GUID

一个表示唯一 ID 的字符串。

History

用于跟踪历史信息的自定义格式的字段。 此数据类型仅用于支持 “历史记录 ”字段。 当全文搜索可用时,该字段在进行全文搜索时可自动创建索引。 请参阅本文稍后介绍的 全文搜索和部分字词搜索 。 有关查询示例,请参阅 历史记录和审核

HTML

支持带格式说明的文本字符串,例如“ 说明” 或“ 重现步骤” 字段。 当全文搜索可用时,这些字段在进行全文搜索时可自动创建索引。 请参阅本文稍后介绍的 全文搜索和部分字词搜索 。 若要查询富文本字段,请参阅 按标题、ID 和富文本字段进行查询

标识

标识用户标识的短文本字符串。

整数

一个 32 位有符号整数,如 0、1、2、34。

多行) (纯文本或文本字段

支持较长说明的文本字符串,例如 “应用程序开始信息” 字段。 当全文搜索可用时,这些字段在进行全文搜索时可自动创建索引。 请参阅本文稍后介绍的 全文搜索和部分字词搜索 。 若要查询纯文本字段,请参阅 按标题、ID 和富文本字段进行查询

picklistDouble1

定义为包含十进制值的选取列表的自定义字段。

picklistInteger1

定义为包含整数值的选取列表的自定义字段。

picklistString1

定义为包含短文本字符串选取列表的自定义字段 (255 个字符或更少) 值。

单行) (字符串或文本字段

最多包含 255 个 Unicode 字符的短文本字符串。 字符串文本字段通常用于支持选择列表或下拉菜单。

TreePath

一个分支树结构,如“区域路径”或“迭代路径”。 从有效值列表中选择一个项。 在树结构下查找等于、不等于、低于或不等于的工作项,或使用 In 或 Not In 运算符指定多个值。 为项目定义树结构(区域路径迭代路径),然后选择要与团队关联的树结构。

有关构造查询的详细信息,请参阅 按区域或迭代路径 查询或 按日期或当前迭代查询

注意

  1. picklist... 数据类型仅分配给为继承进程定义的自定义字段。 继承的进程模型仅支持 Azure DevOps Services 和 Azure DevOps Server 2019。

日期和时间模式

DateTime 字段输入的日期和时间模式应与通过配置文件选择的日期和时间模式匹配。 若要查看或更改选择,请参阅 设置用户首选项、时间和区域设置

“时间和区域设置”页、日期模式选项“时间和区域设置”页、时间模式选项

“时间和区域设置”页,“日期模式”选项

查询运算符

可使用下表中的查询运算符指定子句中的每个值必须如何与工作项中的对应值相关。 有关分配给工作项字段的数据类型的信息,请参阅 工作项字段引用

若要了解如何添加子句和使用 And/Or 运算符,请参阅 定义查询和/或逻辑表达式

查询运算符

如果工作项中的值与列出的条件匹配,则返回工作项

适用的数据类型

=

与子句中的值匹配。

Number(包括 DoubleGUIDInteger)和 StringDateTimeTreePath

<>

与 子句中的值不匹配。

NumberStringDateTimeTreePath

>

大于子句中的值。

NumberStringDateTime

<

小于子句中的值。

NumberStringDateTime

>=

大于或等于子句中的值。

NumberStringDateTime

<=

小于或等于子句中的值。

NumberStringDateTime

=[Field]

与指定字段中包含的值匹配。

与指定字段具有相同数据类型的字段的名称

<>[字段]

与指定字段中包含的值不匹配。

与指定字段具有相同数据类型的字段的名称

>[字段]

大于指定字段中包含的值。

与指定字段具有相同数据类型的字段的名称

<[字段]

小于指定字段中包含的值。

与指定字段具有相同数据类型的字段的名称

>=[Field]

大于或等于指定字段中包含的值。

与指定字段具有相同数据类型的字段的名称

<=[Field]

小于或等于指定字段中包含的值。

与指定字段具有相同数据类型的字段的名称

包含

在你为筛选而选择的字段中包含文本字符串的完全或部分匹配。

字符串

不包含

在选定筛选的字段中,不包含文本字符串的完全匹配或部分匹配。

字符串

包含字词

在你为筛选而选定的字段内包含准确的文本字符串或字。 也可输入包含通配符“*”的部分单词或短语。 文本字符串限制为 100 个字符。 有关限制,请参阅 全文搜索 服务器和排序规则要求。

为全文搜索编制索引的长文本字段,对应于所有 PlainTextHTML 字段,以及 历史记录标题 字段。

不包含单词

不包含你选择筛选的字段中的确切文本字符串或单词。 文本字符串限制为 100 个字符。

将此运算符与包含 字词 运算符的 子句结合使用,以包含和排除特定关键字。

在进行全文搜索时编制索引的文本字段。

位于

与分隔的集合中的任何值匹配。 例如,如果为 ID 字段指定值 100、101 和 102,则可查找 ID 为这些值的工作项。 用列表分隔符分隔值,列表分隔符与为你的客户端计算机定义的区域设置相对应。 例如,可以使用逗号 (,)。

NumberStringDateTimeTreePath

为空

列出包含空 HTML 字段的工作项。 不使用此运算符指定值。 Azure Boards (云服务) 、Azure DevOps Server 2019 及更高版本支持此运算符。

HTML

不为空

列出 HTML 字段中包含某些内容的工作项。 不使用此运算符指定值。 Azure Boards (云服务) 、Azure DevOps Server 2019 及更高版本支持此运算符。

HTML

不位于

与带分隔符的集中的任何值都不匹配。 如果为“状态”字段指定了这些值,则可以从查询结果中排除状态不是“已解决”、“已完成”或“已关闭”的工作项。 用列表分隔符分隔值,列表分隔符与为你的客户端计算机定义的区域设置相对应。 例如,可以使用逗号 (,)。

Azure Boards 和 TFS 2018.2 及更高版本中提供了 Not In 运算符。

NumberStringDateTimeTreePath

在组中

与作为子句中组的成员的值匹配。 组对应于团队、安全组或工作跟踪类别的名称。 例如,你可以创建一个查询,用来查找分配给 Contributors 组成员或分配给团队的所有工作项。 在创建团队时创建团队组。 团队组的名称遵循模式 [团队项目名称]\团队名称

有关示例查询,请参阅 按分配或工作流更改进行查询

与系统中定义的团队、安全组或类别的名称匹配的字符串

注意

只能将 In Group 运算符用于使用 String 数据类型或 “工作项类型” 字段的字段。 当Azure Boards帐户受 Azure AD 支持时,还可以使用 Azure Active Directory (Azure AD) 中定义的组;如果本地服务器实例受 Active Directory 支持,则使用 Active Directory。

有关类别组的信息,请参阅 使用类别对工作项类型进行分组

不在组中

与 子句中组成员的值不匹配。

与 Team Foundation Server 中用户组的名称或为项目定义的类别组名称匹配的字符串

注意

只能将 Not In Group 运算符用于使用 String 数据类型或 “工作项类型 ”字段的字段。 当Azure Boards帐户受 Azure AD 支持时,还可以使用 Azure AD 中定义的组;如果本地服务器实例受 Active Directory 支持,则使用 Active Directory。

不小于

与 子句中的值不匹配,并且不包含在 子句的 节点下。

TreePath

与子句中的值匹配或包含在子句中节点之下。

TreePath

曾是

在以前任意时间与子句中的值匹配。

字符串DateTime

提示

可以使用 WIQL 语法构造查询,该语法使用运算符(如 Was Ever)来构建除列出的数据类型字段以外的其他数据类型字段。 例如,可以使用迭代路径在 子句中使用 Was Ever。 有关示例,请参阅 按日期或当前迭代查询,列出移出冲刺的工作项

查询宏或变量

可以使用下表中所述的宏基于特定字段筛选查询。

注意

以下宏仅在 Web 门户中受支持: @CurrentIteration@CurrentIteration +/- n@Follows@MyRecentActivity@RecentMentions@RecentProjectActivity@TeamAreas。 在 Visual Studio/团队资源管理器、Microsoft Excel 或 Microsoft Project 中打开时,包含这些宏的查询将不起作用。


宏观

说明


[任何]

“工作项类型”“状态” 字段一起使用,可跨所有工作项类型或跨所有状态进行搜索。 例如, Work Item Type=[Any] 不会基于工作项类型放置任何筛选器。


@CurrentIteration

与“ 迭代路径” 字段结合使用,根据当前 团队焦点或上下文自动筛选分配给当前冲刺的工作项。 有关特定示例,请参阅 按日期或当前迭代查询
仅当从 Web 门户运行时, @CurrentIteration 宏才有效。 复制或克隆测试套件和测试用例定义警报或使用 REST API 时,不能使用 宏。


@CurrentIteration +/- n

“迭代路径”字段一起使用,根据当前团队焦点或上下文筛选分配给当前冲刺 +/- n 个冲刺的工作项集。 有关特定示例,请参阅 按日期或当前迭代查询
Azure Boards、Azure DevOps Server 2019 及更高版本以及仅当从 Web 门户运行时,才支持@CurrentIteration +/- n 宏。


@Follows

将 与 ID 字段和 In 运算符一起使用,以列出项目中要关注的所有工作项。 若要了解有关“关注”功能的详细信息,请参阅 关注工作项或拉取请求。 可以从 “工作项”页的“ 关注 透视视图”查看此同一列表。
仅当从 Web 门户运行时,才支持 @Follows 宏。


@Me

与标识或用户帐户字段一起使用,以自动搜索与你的用户或帐户名称关联的项。 例如,可以找到使用 子句 Created By=@Me打开的工作项。 有关更多示例,请参阅 按分配、工作流或看板更改进行查询


@MyRecentActivity1

将 与 ID 字段和 In 运算符一起使用,列出过去 30 天内在项目中查看或更新的工作项。 可以从 “工作项”页“ ”我的活动 透视视图“查看此同一列表。


@Project

与“ 团队项目” 字段一起使用,以筛选其他项目中的工作项。 例如,可以使用 子句 Team Project=@Project查找当前所选项目中的所有工作项。 系统自动默认基于当前项目进行筛选。 若要了解详细信息,请参阅 定义查询跨项目查询


@RecentMentions1

将 与 ID 字段和 In 运算符一起使用,列出“讨论”部分中提及的工作项。 可以从 “工作项”页的 “提及的 透视视图”查看此同一列表。


@RecentProjectActivity1

ID 字段和 In 运算符一起使用可列出最近更新的工作项。 列出的工作项数取决于项目的工作跟踪活动。 对于高度活跃的项目,宏将列出在过去 30 天左右内已在项目中更新的工作项。 但是,对于不太活跃的项目,此列表可能包含超过 30 天的工作项。 可以从 “工作项”页、 “最近创建”、“ 最近更新 ”和 “最近完成 ”透视视图查看类似的列表。 返回的工作项数上限为 5000。


@StartOfDay2

与 字段一 DateTime 起使用,以筛选与当前日期相关的工作项或带有加/减偏移量的工作项。 例如,可以使用 子句 Closed Date>=@StartOfDay-7查找上周关闭的所有项。 有关更多示例,请参阅 按日期或当前迭代查询


@StartOfMonth2

与 字段一 DateTime 起使用,以筛选与当前月份相关的工作项或具有正/减偏移量的工作项。 例如,可以使用 子句 Created Date>=@StartOfMonth-3查找在过去三个月内创建的所有项。 有关更多示例,请参阅 按日期或当前迭代查询


@StartOfWeek2

与 字段一 DateTime 起使用,以筛选与当前周相关的工作项或具有正/减偏移量的工作项。 例如,可以使用 子句 Changed Date>=@StartOfWeek-2查找过去两周内更改的所有项。 有关更多示例,请参阅 按日期或当前迭代查询


@StartOfYear2

与 字段一 DateTime 起使用,以筛选与当前年份相关或具有正/减偏移量的工作项。 例如,可以使用 子句 Target Date>=@StartOfYear查找在当前年度内计划的目标日期的所有特征。 有关更多示例,请参阅 按日期或当前迭代查询


@TeamAreas

仅与“ 区域路径” 字段一起使用,以筛选其区域路径对应于分配给特定团队的工作项。 要求使用 = 运算符。 例如,可以使用 子句 Area Path=@TeamAreas [Fabrikam Fiber]\Web查找分配给 Web 团队的区域路径的所有项。 有关更多示例,请参阅 按区域或迭代路径查询
Azure DevOps Server 2019 及更高版本支持 @TeamAreas 宏,并且仅当从 Web 门户运行时。


@Today

与 字段一 DateTime 起使用,以筛选与当前日期或较早日期相关的工作项。 还可以通过减去天数来修改 @Today 宏。 例如,可以使用 子句 Created Date>=Today-7查找上周创建的所有项。 有关更多示例,请参阅 按日期或当前迭代查询


注意

  1. TFS 2018.2 及更高版本支持 @MyRecentActivity@RecentMentions 和 @RecentProjectActivity 宏。
  2. Azure DevOps Server 2019 Update 1 及更高版本支持 @StartOfDay、@StartOfWeek、@StartOfMonth 和 @StartOfYear 宏。

全文和部分单词搜索

指定 ContainsNot Contain 可搜索字词或短语的完全或部分匹配项。 这些运算符根据为长文本字段创建的全文搜索索引筛选项。 指定 “包含字词 ”或“ 不包含单词 ”,以针对确切短语进行搜索或使用通配符 *。 这些运算符使用全文搜索索引。 只能在部分单词或短语的末尾使用通配符。

有关示例,请参阅 示例工作项查询 和使用 历史记录字段查询工作项

注意

并非所有部署都支持全文搜索。 例如,支持云服务的 SQL Express 和 SQL Azure 不支持全文搜索。 在这些实例中,将只看到 ContainsDoes not Contain 运算符。

Azure DevOps Server 和 Team Foundation Server 自动为数据类型为 PlainTextHTML 的所有长文本字段编制索引,以及用于全文搜索的 Title 字段。 仅当支持 Team Foundation Server 的SQL Server支持全文搜索时,索引和运算符才可用。

全文搜索需要 SQL 排序规则,该排序规则对应于已注册到 SQL Server 的断字符的语言。 如果用于 Team Foundation Server 实例的项目集合数据库的排序规则设置与支持的语言不对应,则搜索结果可能与预期不符。 在这些情况下,可以尝试使用 ContainsDoes Not Contain 运算符。

有关详细信息,请参阅 全文搜索查询和排序规则设置

REST API

若要以编程方式与查询交互,请参阅以下 REST API 资源之一: