在 Azure Boards 和 Azure DevOps 中依標題、標識碼和 RTF 字段進行查詢

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

當您想要根據關鍵詞或片語或 Null 文字欄位尋找工作專案時,可以藉由篩選單行文字 (String)、多行文字 (PlainText) 和 RTF (HTML) 欄位來執行此動作。 如果您發現查詢傳回結果的時間太長,請參閱 建立查詢/最佳做法

支援的運算子和宏

指定文字或 RTF 欄位的查詢子句可以使用下表所列的運算子和宏。


資料類型

支援的運算子和宏


RTF 文字 (HTML)
多行文字字串 (PlainText)

Contains Words、、Does Not Contain WordsIs Empty1、1 Is Not Empty


單一文字 (字串)

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, Does Not Contain, In, Not In, In Group, Not In Group, Was Ever宏:[Any],有效的 [工作項目類型] 字段和@Project 2,有效於 [小組專案] 字段。


識別碼

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], In, Not In, Was Ever宏:@Follows@MyRecentActivity@RecentMentions@RecentProjectActivity、有效的標識符欄位和In運算元 @ProjectNot In 2,在 Team Project 欄位中有效。


狀態工作項目類型 欄位

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field], Contains, not contain, in not in group, not, in, , group was ever **Macros**:[Any]' 對這兩個字段都有效。


注意

  1. Is Empty Azure DevOps Server 2019 RC2 和更新版本支援 和 Is Not Empty 運算符
  2. 系統會根據目前的項目自動預設為篩選。 如需詳細資訊,請參閱跨專案查詢

用於 Contains words 字串比對

當您要篩選字串比對時,請嘗試使用 Contains Words 運算子,而不是 Contains。 運算子 Contains Words 會在指定的欄位上執行全文搜索,在大部分情況下會比較快。 文字字串限制為100個字元。

雖然運算符會 Contains 執行數據表掃描,但不僅速度較慢,也會耗用更多的 CPU 週期。 這些 CPU 週期有助於資源耗用速率限制。

注意

運算子 Contains Words 會使用 SQL 的 全文搜索索引。 當新的值儲存至長文字欄位時,SQL Server 會:

  • 將片語分割成個別單字
  • 移除任何不真正將值新增至搜尋的常見字詞(例如英文中的 “a” 或 “is” )
  • 將單字轉換成其常見的字幹(例如執行、執行和執行器會轉換成“run”,因為它們是該字的所有變化)
  • 將這些唯一關鍵詞儲存在索引中。

當使用者接著使用 Contains Words 運算符在此字段上執行查詢時,會針對儲存在索引中的唯一關鍵詞執行搜尋。 對於長文字欄位,這可讓搜尋比執行子字串搜尋更有效率且更快。 根據預設,SQL 會將 「word」 定義為標點符號之間的一組字元。 例如,句號表示文字的結尾,但句號不會被視為單字的一部分。 由於全文搜索索引包含關鍵詞,而不是確切的片語,因此您最終會得到包含相同關鍵詞的所有結果,如索引編製所決定。

使用通配符的關鍵詞或片語查詢

使用 ContainsContains Words 列出部分或完全符合您輸入之單字或片語的專案。

Editor for flat list query for filtering key words.

選擇 [ 包含] 或 [不包含] 來搜尋單字或片語的確切或部分相符專案。 選擇 [包含單字 ] 或 [不包含文字 ] 來搜尋確切的片語,或使用通配符 *。 這些運算子會使用全文搜索索引。

例如,指定 Contains Wordsinform* 以篩選包含通知或資訊或資訊文字字段。

Use wild card with Contains Words.

提示

若要瞭解子句的分組方式 AND/OR ,請參閱 建立和儲存受控查詢群組子句。 若要檢視查詢的WIQL語法,請安裝 WIQL查詢編輯器延伸模組 ,可讓您查看任何查詢編輯器專案的WIQL版本。

查詢特定單字而非其他人

使用 Contains WordsNot Contain Words 運算符來列出完全符合您輸入之單字或片語的專案,並排除其他單字或片語。 您可以使用這些運算元搭配通配符 ,並搭配通配符 \。

在下列範例中,這些運算符會篩選包含工作階段但不是 Phasor 一字的專案的工作專案。

Screenshot of Query Editor to include and exclude exact words.

未定義的域值查詢

您可以使用 equals 運算子 (=) 找到具有未定義域值的工作專案,並將欄位的 Value 保留空白。 例如,下列篩選會列出 [工作] 字段空白類型的所有工作專案。

Filter based on blank entries

若要根據不是空白的欄位列出工作專案,請使用 not 運算元 (<>), 並將 [值] 保留空白。

空白或不空白的 HTML 欄位查詢

您可以找到未 輸入 [描述 ] 的工作專案。 搭配 HTML 欄位使用 [是空白] 或 [不是空白] 欄位,可支援列出具有空白或非空白 RTF 字段的工作專案。 您未使用這個運算子指定值。

例如,下列查詢篩選會列出某些專案已進入 [描述 ] 字段的所有工作專案。

Filter based non-empty HTML fields

注意

查詢沒有附加任何標籤的工作專案的能力不是支援的功能。 如果您想要對支援這項功能的要求進行投票,您可以在我們的 開發人員社群 頁面上執行這項操作,以便搜尋空白標籤

以類別為基礎的查詢

若要根據工作專案所屬的類別來篩選工作專案,請使用 In Group 運算符。 例如,下列篩選準則會傳回目前專案中的所有工作專案、指派給小組成員,並定義為屬於 Bug 類別目錄。

Query clause to find work items by category

需求或工作類別中會出現哪些專案?

每個程式都會列出工作項目類型的預設指派。

處理 需求類別 工作類別
基本 問題 Task
敏捷式 使用者劇本 Task
Scrum 產品待辦專案,Bug Task
Cmmi 需求 Task

每個小組都可以判斷 Bug 工作項目類型是否出現在 [需求] 或 [工作] 類別中。 請參閱 在待辦專案和面板上顯示 Bug。 您可以將自訂工作項目類型新增至待辦專案。 如需詳細資訊,請參閱 新增或修改工作專案類型、將自定義WIT新增至待辦專案或面板

查詢您正在追蹤的工作專案

您可以使用 @Follows 宏,根據您追蹤的工作專案和其他查詢篩選來篩選清單。

例如,下列查詢示範如何跨所有項目查詢您正在追蹤的作用中工作專案。 您可以使用識別符欄位和 In 運算元搭配 @Follows 宏。

Query Editor, with ID In @Follows query clause

查詢最近的工作項目活動

您可以使用下列宏,根據最近的活動列出工作專案:

  • @MyRecentActivity:列出您最近檢視或修改的專案。
  • @RecentMentions:過去 30 天內透過@mention新增至的項目清單。
  • @RecentProjectActivity:列出您專案中最近建立或修改的專案。

指定 [標識符] 欄位,並指定 InNot In 運算子。

例如,下列查詢示範如何查詢您最近檢視或修改的工作專案。

Query Editor, with ID In @MyRecentActivity query clause

大部分工作專案類型的常見欄位

下表描述用來篩選查詢的一般欄位。 標識元欄位可唯一識別清單中的工作專案。 使用 [ 標題] 欄位,將工作專案與相同類型的所有其他專案區別開來。 [ 描述 ] 和其他 RTF (data type=HTML) 字段會提供實作工作和追蹤變更所需的其他資訊。 建立工作項目之後,您可以修改標識碼以外的所有欄位。 當您新增並儲存工作專案時,系統會指派標識符,且無法變更。

注意

系統會使用純文本和 HTML 欄位的數據類型來自動編制所有長文字欄位的索引,以進行全文搜索。 這包括 [ 標題]、 [描述] 和 [重現 步驟] 字段。 如需適用於內部部署 Azure DevOps 的詳細資訊和伺服器和定序需求,請參閱 查詢欄位、運算元、值和變數 - 全文檢索和部分文字搜尋

欄位名稱

說明

工作項目類型


接受準則 1

可在關閉 Bug 或產品待辦專案之前符合的準則描述。

在工作開始於 Bug 或產品待辦專案之前,應盡可能清楚描述客戶接受的準則。 小組與客戶之間的交談,以定義驗收準則有助於確保您的小組了解客戶的期望。 驗收準則可作為驗收測試的基礎,以便更有效地評估專案是否已順利完成。

參考名稱=Microsoft.VSTS.Common.AcceptanceCriteria,數據類型=HTML

Bug、Epic、Feature、Product 待辦專案 (Scrum)

描述 1, 2

使用此欄位提供工作專案的深入資訊。

參考名稱=System.Description,數據類型=HTML

全部

識別碼

指派給工作專案的唯一標識符。 工作專案標識碼在所有專案和專案集合內都是唯一的。

參考名稱=System.Id,數據類型=Integer

全部

重現步驟 (或重現的步驟) 1

重現非預期行為所需的步驟。 擷取足夠的資訊,讓其他小組成員能夠了解問題的完整影響,以及他們是否已修正 Bug。 這包括要尋找或重現 Bug 和預期行為的動作。
參考名稱=Microsoft.VSTS.TCM.ReproSteps,數據類型=HTML

Bug

解決方法

描述如何解決障礙。

參考名稱=Microsoft.VSTS.Common.Resolution, 資料類型=HTML

障礙(斯克魯姆)

系統資訊1

與 Bug、程式代碼檢閱或意見反應相關的軟體和系統設定相關信息。

參考名稱=Microsoft.VSTS.TCM.SystemInfo,數據類型=HTML

Bug、程式代碼檢閱要求、意見反應要求

團隊專案

工作專案所屬的專案。 當您想要將清單篩選為一或多個專案中的專案時,請將此欄位新增至查詢。 如需詳細資訊,請參閱 範例查詢、跨項目查詢。

參考名稱=System.TeamProject,數據類型=String

全部

標題

簡短描述,摘要說明工作項目是什麼,並協助小組成員將它與清單中的其他工作專案區別開來。

參考名稱=System.Title,數據類型=String

全部

工作項目類型

工作項目類型的名稱。 工作專案類型是根據您建立專案時所使用的程式來定義。 如需詳細資訊,請參閱 關於進程和進程範本 ,以及 新增或修改工作項目類型

若要根據其類別指派來篩選工作專案,您可以使用 [群組] 和 [不在群組] 運算符,並從下拉式清單中選取類別。

參考名稱=System.WorkItemType,數據類型=String

全部

注意

升級至 Team Foundation Server 2012 時,[描述] 欄位已從 PlainText 的字段類型變更為 HTML使用 witadmin changefield 命令,您可以還原此字段的數據類型。 請參閱 管理工作項目欄位 (witadmin)

REST API

若要以程式設計方式與查詢互動,請參閱下列其中一個 REST API 資源: