Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Tipp
Zum ersten Mal eine Abfrage ausführen? Beginnen Sie mit "Definieren einer Abfrage für Prozedurschritte" oder "Abfrage-Kurzübersicht " für Beispiele.
Verwenden Sie diese Referenzanleitung, um Felddatentypen, Abfrageoperatoren, Makros und Variablen beim Erstellen von Abfragen im Abfrage-Editor nachzuschlagen. Alle Operatoren und Makros werden in Azure Boards unterstützt. Einige gelten nur für bestimmte Azure DevOps Server Versionen.
Schnelle Beispiele und Editoraufgaben finden Sie unter "Abfrageschnellübersicht " und " Verwalten und Organisieren von Abfragen".
Voraussetzungen
| Kategorie | Anforderungen |
|---|---|
| Project-Mitgliedschaft | Sie müssen als Mitglied des Projekts hinzugefügt werden. |
| Zugriffsebenen | - Um freigegebene Abfragen anzuzeigen und auszuführen: Sie müssen ein Project Mitglied sein. – Um eine freigegebene Abfrage hinzuzufügen und zu speichern: Sie müssen mindestens Basic-Zugriff haben. |
| Erlaubnisse | Stellen Sie sicher, dass die Berechtigung "Mitwirken" auf " Zulassen " für den Ordner festgelegt ist, in dem Sie eine Abfrage hinzufügen möchten. Möglicherweise muss Ihre Organisation die Gruppe "Mitwirkende " manuell konfigurieren, um diese Berechtigung zu erteilen. |
Hinweis
Sie benötigen sowohl eine ausreichende Zugriffsstufe als auch die Berechtigung "Mitwirken ", um freigegebene Abfragen zu speichern. Der grundlegende Zugriff reicht nicht aus.
| Kategorie | Anforderungen |
|---|---|
| Project-Mitgliedschaft | Sie müssen als Mitglied des Projekts hinzugefügt werden. |
| Zugriffsebenen | - Um freigegebene Abfragen anzuzeigen und auszuführen: Sie müssen ein Project Mitglied sein. – Um eine freigegebene Abfrage hinzuzufügen und zu speichern: Sie müssen mindestens Basic-Zugriff haben. |
| Erlaubnisse | Stellen Sie sicher, dass die Berechtigung "Mitwirken" auf " Zulassen " für den Ordner festgelegt ist, in dem Sie eine Abfrage hinzufügen möchten. Möglicherweise muss Ihre Organisation die Gruppe "Mitwirkende " manuell konfigurieren, um diese Berechtigung zu erteilen. |
Hinweis
Sie benötigen sowohl eine ausreichende Zugriffsstufe als auch die Berechtigung "Mitwirken ", um freigegebene Abfragen zu speichern. Der grundlegende Zugriff reicht nicht aus.
Abfragefeld-Datentypen und -werte
Geben Sie einen Wert an, der dem Datentyp für ein Feld entspricht. In der folgenden Tabelle sind unterstützte Datentypen aufgeführt:
Hinweis
Für Azure Boards (Cloud) entspricht der Datentyp dem Feld, das auf der Seite Process > Fields angezeigt wird. Bei lokalen Bereitstellungen entspricht der Datentyp dem type Attribut einer FIELD Definition. Details finden Sie unter Arbeitselementfelder und Feldattribute .
| Datentyp | Description |
|---|---|
| Boolean | Speichert einen True/False-Wert. |
| DateTime oder Datum/Uhrzeit | Verwenden Sie eine Datumsvariable (z. B. @Today oder @Today-1) oder ein explizites Datum wie 01/01/2025. Geben Sie Datumsangaben im Muster ein, das in Ihrem Profil festgelegt ist. Beispiele für Abfragen finden Sie unter Query by date or @CurrentIteration. Für WIQL-Abfragen können Sie auch Datumsangaben in UTC angeben. Siehe Syntax für die Arbeitsaufgabenabfragesprache (WIQL). |
| Doppelt oder Dezimal | Speichert eine reelle Zahl, z. B. 0,2 oder 3.5. Beispiele finden Sie unter "Abfrage nach numerischen Feldern ". |
| GUID | Speichert eine eindeutige Id-Zeichenfolge. |
| Verlauf | Benutzerdefiniertes formatiertes Feld, das für historische Informationen verwendet wird (das Feld "Verlauf "). Wenn die Volltextsuche verfügbar ist, wird dieses Feld für Volltextabfragen indiziert. Siehe Verlauf und Überwachung. |
| HTML | Speichert formatierten Text, z. B. Beschreibung oder Repro-Schritte. Wenn die Volltextsuche verfügbar ist, werden diese Felder indiziert. Informationen zum Abfragen von Rich-Text-Feldern finden Sie unter Abfragen nach Titeln, IDs und Rich-Text-Feldern. |
| Identität | Speichert eine kurze Textzeichenfolge, die eine Benutzeridentität identifiziert. |
| Integer | Speichert eine signierte 32-Bit-Ganzzahl, z. B. 0, 1, 2 oder 34. |
| PlainText oder Textfeld (mehrzeilig) | Speichert lange Textwerte, z. B. Anwendungsstartinformationen. Diese Felder indizieren für die Volltextsuche, wenn dies unterstützt wird. Siehe Abfrage nach Titeln, IDs und Rich-Text-Feldern. |
| picklistDouble | Benutzerdefiniertes Feld, das eine Auswahlliste mit Dezimalwerten enthält. |
| picklistInteger | Benutzerdefiniertes Feld, das eine Auswahlliste mit ganzzahligen Werten enthält. |
| picklistString | Benutzerdefiniertes Feld, das eine Auswahlliste mit kurzen Textwerten (255 Zeichen oder weniger) enthält. |
| Zeichenfolge oder Textfeld (einzeilig) | Speichert kurzen Text bis zu 255 Unicode-Zeichen. Teams verwenden diese Felder häufig für Auswahllisten oder Dropdownmenüs. |
| TreePath | Stellt einen verzweigten Baum dar, z. B. Bereichspfad oder Iterationspfad. Wählen Sie einen gültigen Knotenwert aus. Sie können nach Gleichheit, Ungleichheit, "Unter" oder "Nicht unter" filtern. Verwenden Sie die In Operatoren, Not In um mehrere Werte anzugeben. Definieren Sie Strukturstrukturen für ein Projekt – Bereichspfade und Iterationspfade – und wählen Sie die Knoten aus, die mit Teams verknüpft werden sollen. Beispiele für Abfragen finden Sie unter Abfrage nach Bereich oder Iterationspfad und Abfrage nach Datum oder aktueller Iteration. |
Hinweis
Die picklist... Typen gelten nur für benutzerdefinierte Felder, die für einen geerbten Prozess definiert sind.
Datums- und Uhrzeitmuster
Das Datums- und Uhrzeitmuster, das Sie für DateTime-Felder eingeben, muss mit dem Muster übereinstimmen, das Sie über Ihr Profil auswählen. Informationen zum Anzeigen oder Ändern Ihrer Auswahl finden Sie unter Festlegen von Benutzereinstellungen.
Abfrageoperatoren
Verwenden Sie Operatoren, um zu definieren, wie ein Klauselwert mit dem Feldwert einer Arbeitsaufgabe zusammenhängen muss. Informationen zu Felddatentypen finden Sie unter Feldreferenz für Arbeitselement. Hilfe zum Erstellen von Abfragen finden Sie unter Definieren einer Abfrage.
| Abfrageoperator | Wenn der Operator übereinstimmende Arbeitsaufgaben zurückgibt | Anwendbare Datentypen |
|---|---|---|
| = | Entspricht dem Klauselwert. | Number (Double/Decimal/GUID/Integer), String, DateTime, TreePath |
| <> | Stimmt nicht mit dem Klauselwert überein. | Number, String, DateTime, TreePath |
| > | Ist größer als der Klauselwert. | Zahl, String, Datumszeit |
| < | Ist kleiner als der Klauselwert. | Zahl, String, Datumszeit |
| >= | Ist größer oder gleich dem Klauselwert. | Zahl, String, Datumszeit |
| <= | Ist kleiner oder gleich dem Klauselwert. | Zahl, String, Datumszeit |
| =[Field] | Entspricht dem Wert in einem anderen angegebenen Feld (muss derselbe Datentyp sein). | Name eines Felds desselben Datentyps (boolesche Felder vergleichen die Gleichheit mit anderen Feldern). |
| <>[Feld] | Stimmt nicht mit dem Wert in einem anderen angegebenen Feld überein. | Name eines Felds desselben Datentyps. |
| >[Feld] | Ist größer als der Wert in einem anderen angegebenen Feld. | Name eines Felds desselben Datentyps. |
| <[Feld] | Ist kleiner als der Wert in einem anderen angegebenen Feld. | Name eines Felds desselben Datentyps. |
| >=[Feld] | Ist größer oder gleich dem Wert in einem anderen angegebenen Feld. | Name eines Felds desselben Datentyps. |
| <=[Feld] | Ist kleiner oder gleich dem Wert in einem anderen angegebenen Feld. | Name eines Felds desselben Datentyps. |
| Enthält | Enthält eine genaue oder teilweise Textabgleichung. | String |
| Enthält nicht | Enthält keine exakte oder partielle Textabgleichung. | String |
| Enthält Wörter | Entspricht einem exakten Ausdruck oder Wort (unterstützt nachfolgende Wildcard *). Grenzwert: 100 Zeichen. Dieser Operator verwendet Volltextindizierung; Weitere Informationen zu Server- und Sortierungsanforderungen finden Sie im Abschnitt "Volltext" in diesem Artikel. |
Lange Textfelder, die für die Volltextsuche indiziert sind (PlainText, HTML, History und Title). |
| Enthält keine Wörter | Schließt Elemente aus, die den angegebenen Ausdruck oder die angegebenen Wörter enthalten. Grenzwert: 100 Zeichen. Verwenden Sie Contains Words in Begleitsätzen, um Schlüsselwörter einzuschließen oder auszuschließen. |
Textfelder, die für die Volltextsuche indiziert sind. |
| In | Entspricht einem beliebigen Wert in einem durch Trennzeichen getrennten Satz (verwenden Sie das regionale Listentrennzeichen des Betriebssystems, in der Regel ein Komma). | Number, String, DateTime, TreePath |
| Ist leer | Gleicht Elemente ab, bei denen ein HTML-Feld keinen Inhalt enthält (kein Wert angegeben). Unterstützt für Azure Boards und Azure DevOps Server. | HTML |
| Ist nicht leer | Gleicht Elemente ab, bei denen ein HTML-Feld Inhalt enthält. Unterstützt für Azure Boards und Azure DevOps Server. | HTML |
| Nicht in | Schließt Werte in einem durch Trennzeichen getrennten Satz aus (verwenden Sie das regionale Listentrennzeichen). Unterstützt für Azure Boards und Azure DevOps Server. | Number, String, DateTime, TreePath |
| In Gruppe | Gleicht Werte ab, die Mitglieder einer benannten Gruppe sind (Team, Sicherheitsgruppe oder Kategorie). Verwenden Sie z. B. die Gruppe "Mitwirkende" oder eine Teamgruppe, die im Muster [Project Name]\Team Namebenannt ist. Beispiele finden Sie unter "Abfrage nach Zuweisung" oder "Workflowänderungen" . Verwenden Sie „In Gruppe“ nur für Felder des Typs „String“ oder des Typs „Arbeitselement“. Sie können Microsoft Entra ID-Gruppen verwenden, wenn Ihr Konto Microsoft Entra ID nutzt, oder Active Directory-Gruppen für lokale Umgebungen. |
Zeichenfolge (entspricht Gruppen- oder Teamnamen) oder Arbeitselementtyp |
| Nicht in Gruppe | Schließt Mitglieder einer benannten Gruppe aus. | Zeichenfolge, die einer Benutzergruppe oder Projektkategorie entspricht. |
| Nicht unter | Schließt Elemente aus, die gleich dem angegebenen Strukturknoten sind oder sich unter diesem befinden. | TreePath |
| Under | Vergleicht Elemente, die dem angegebenen Baumknoten entsprechen oder darin enthalten sind. | TreePath |
| Was Ever | Entspricht einem Wert, den ein Feld zu einem beliebigen zeitpunkt gehalten hat. (Abfrage-Editor: Nur Zeichenfolgenfelder. Die DateTime-Unterstützung erfordert direkte WIQL-Abfragen.) | Zeichenkette, DatumUhrzeit |
Tipp
Sie können WIQL-Abfragen erstellen, die Operatoren (z. B. Was Ever) für unterschiedliche Datentypen wie den Iterationspfad anwenden. Ein Beispiel finden Sie unter Arbeitsaufgaben, die aus einem Sprint verschoben wurden, auflisten.
Häufige Operatorbeispiele
Hier sind repräsentative Abfragebeispiele, die verschiedene Operatoren verwenden:
| Query | Returns |
|---|---|
State = Active |
Arbeitselemente mit dem Status "Aktiv" |
Priority <> Low |
Alle Elemente mit Ausnahme von Elementen mit niedriger Priorität |
Created Date >= @Today-7 |
Arbeitsaufgaben, die in den letzten 7 Tagen erstellt wurden |
Assigned To = @Me |
Elemente, die dem aktuellen Benutzer zugewiesen sind |
Tags Contains "frontend" |
Elemente mit einem Tag mit "frontend" |
State In (Active, In Progress) |
Elemente in einem der beiden Zustände |
Area Path Under "Project\Web" |
Alle Elemente im Webbereich, einschließlich Unterbereiche |
Assigned To In Group "[Project]\Developers" |
Elemente, die jeder Person in der Gruppe "Entwickler" zugewiesen sind |
Description Contains Words "urgent" |
Elemente, bei denen die Beschreibung das Wort "dringend" enthält |
Volltext- und Teilwortsuchen
Verwenden Sie „Enthält“ oder „Enthält nicht“, um in Langtextfeldern nach exakten oder teilweisen Übereinstimmungen zu suchen. Diese Operatoren verwenden den Abfrageindex. Verwenden Sie Enthält Wörter oder Enthält keine Wörter, um nach exakten Wortgruppen zu suchen, oder verwenden Sie einen Platzhalter am Wortende (*). Für diese Operatoren ist der Volltextindex erforderlich.
Sie können das Platzhalterzeichen nur am Ende eines Teilwortes oder Ausdrucks verwenden. Beispiele finden Sie unter Beispiele für Arbeitselementabfragen und Abfragen von Arbeitselementen mithilfe des Verlaufsfelds.
Hinweis
Nicht alle Bereitstellungen unterstützen die Volltextsuche. Beispielsweise unterstützen SQL Express und einige Cloud-SQL-Konfigurationen keine Volltextsuche. In diesen Bereitstellungen sind nur die Operatoren „Contains“ und „Does Not Contain“ sichtbar.
Azure DevOps Server indiziert Langtextfelder (PlainText und HTML) und das Titelfeld für die Volltextsuche, wenn der zugrunde liegende SQL Server die Volltextindizierung unterstützt.
Die Volltextsuche erfordert auch eine SQL-Sortierung mit einem registrierten Worttrennzeichen für die verwendete Sprache. Wenn die Sammlungsdatenbanksortierung nicht mit einer unterstützten Sprache übereinstimmt, stimmen die Ergebnisse möglicherweise nicht mit den Erwartungen überein. Verwenden Sie in diesen Fällen "Contains" oder "Enthält nicht" stattdessen.
Weitere Informationen finden Sie unter Volltextsuchabfragen und Sortiereinstellungen.
Kombinieren von Operatoren
Abfragen verwenden AND-Logik , um mehrere Klauseln zu kombinieren. Jede zusätzliche Klausel filtert die Ergebnisse weiter. Beispiel:
-
State = Active AND Priority = Highgibt Arbeitselemente zurück, die aktiv sind und eine hohe Priorität haben. -
State = Active AND State <> Closedgibt aktive Elemente unter Ausschluss der als geschlossen gekennzeichneten zurück. -
Assigned To = @Me AND State <> Donegibt Elemente zurück, die Ihnen zugewiesen und noch nicht abgeschlossen sind.
Sie können Klammern verwenden, um Bedingungen für komplexe Abfragen in direkter WIQL-Syntax zu gruppieren:
-
(State = Active OR State = In Progress) AND Priority = Highgibt Elemente mit hoher Priorität mit dem Status „Aktiv“ oder „In Bearbeitung“ zurück.
Weitere Beispiele und WIQL-Syntaxdetails finden Sie unter Syntax für die Arbeitselementabfragesprache (WIQL).
Problembehandlung und häufige Fehler
| Problem | Wahrscheinliche Ursache | Lösung |
|---|---|---|
| Makro gibt keine Ergebnisse zurück. | @CurrentIteration funktioniert nur im Webportal; REST-APIs und CLI geben möglicherweise leere Ergebnisse zurück. | Verwenden Sie stattdessen direkte Datumsangaben in Skripts oder APIs. Alternativen finden Sie unter Abfrage nach Datum oder aktueller Iteration. |
| @TeamAreas Abfrage gibt unerwartete Ergebnisse zurück. | Makro funktioniert nur mit dem Feld "Bereichspfad "; Die Verwendung mit anderen Feldern hat keine Auswirkung. | Überprüfen Sie, ob Sie nach Area Path filtern. Verwenden Sie stattdessen andere Strukturpfadfelder (Iterationspfad) mit dem Operator Unter. |
| Fehler beim Operator "Contains Words" | Die Abfrage überschreitet den Grenzwert von 100 Zeichen oder verwendet ungültige Platzhalterplatzierung. | Reduzieren Sie Abfragetext auf unter 100 Zeichen. Verwenden Sie das Platzhalterzeichen nur am Ende des Begriffs (zum Beispiel feature*), nicht am Anfang. |
| In der Gruppenabfrage schlägt ein Fehler fehl. | Das Gruppennamenformat ist falsch oder die Gruppe ist nicht vorhanden. | Verwenden Sie das genaue Format: Assigned To In Group "[Project]\\Team Name" für Teams. Überprüfen Sie den Gruppennamen in den Projekteinstellungen. |
| Hat der Ever-Operator bei Datumsangaben nicht funktioniert | Der Abfrage-Editor unterstützt Was Ever für DateTime-Felder nicht. |
Verwenden Sie die direkte WIQL-Syntax anstelle des visuellen Abfrage-Editors. Weitere Informationen finden Sie unter Syntax für die Arbeitselement-Abfragesprache (Work Item Query Language, WIQL). |
| Boolesche Feldabfrage gibt keine Ergebnisse zurück. | Bei WIQL-Abfragen wird die Groß-/Kleinschreibung beachtet. | Verwenden Sie den genauen Fall: CustomBoolField = True oder CustomBoolField = False (Groß-/Kleinschreibung T/F in WIQL). |
Abfragemakros und Variablen
Verwenden Sie die folgenden Makros, um Abfragen dynamisch zu filtern.
Hinweis
Die folgenden Makros werden nur über das Webportal unterstützt: @CurrentIteration, @CurrentIteration +/- n, @Follows, @MyRecentActivity, @RecentMentions, @RecentProjectActivity und @TeamAreas. Abfragen, die diese Makros enthalten, funktionieren nicht, wenn sie in Visual Studio/Team Explorer, Microsoft Excel oder Microsoft Project geöffnet werden.
| Makro | Description |
|---|---|
| [Any] | Wird mit Arbeitselementtyp oder Zustand verwendet, um über alle Typen oder Zustände zu suchen. Entfernt beispielsweise die typbasierte Filterung Work Item Type=[Any]. |
| @CurrentIteration | Wird mit Iterationspfad verwendet, um basierend auf dem aktuellen Teamkontext nach Arbeitsaufgaben im aktuellen Sprint zu filtern. Beispiele finden Sie unter Abfrage nach Datum oder aktueller Iteration . @CurrentIteration funktioniert nur, wenn es über das Webportal ausgeführt wird (nicht in REST-APIs oder bei Kopier-/Klonvorgängen). |
| @CurrentIteration +/- n | Wird mit Iterationspfad verwendet, um Sprints relativ zur aktuellen Iteration einzuschließen (z. B. @CurrentIteration-1 oder @CurrentIteration+2). Unterstützt im Webportal für Azure Boards und Azure DevOps Server. |
| @Follows | Wird mit der ID und dem In-Operator verwendet, um die Arbeitsaufgaben aufzulisten, die Sie im Projekt verfolgen. Siehe Einem Arbeitselement oder Pull Request folgen Dieses Makro funktioniert nur über das Webportal. |
| @Me | Wird mit Identitätsfeldern verwendet, um nach Elementen Created By=@Me zu filtern, die mit Ihrem Konto verknüpft sind (z. B.). Siehe Abfrage zu Zuordnungen, Workflows oder Änderungen am Board. |
| @MyRecentActivity | Verwenden Sie ID und In zum Auflisten von Work Items, die Sie in den letzten ungefähr 30 Tagen aktualisiert oder angezeigt haben. Die gleiche Liste finden Sie auf der Seite Arbeitselemente Meine Aktivität. |
| @Project | Mit Teamprojekt können Sie nach Arbeitsaufgaben im aktuellen Projekt filtern (z. B Team Project=@Project. ). Siehe Abfrage über Projekte hinweg. |
| @RecentMentions | Verwenden Sie die ID und In zum Auflisten von Arbeitseinträgen, in denen Sie in Diskussionen erwähnt werden. Siehe die Seite Arbeitselemente, Pivot Erwähnt. |
| @RecentProjectActivity | Wird mit ID und In verwendet, um kürzlich aktualisierte Arbeitsaufgaben im gesamten Projekt aufzulisten. Das Makro gibt bis zu 5.000 Elemente zurück. das tatsächliche Fenster hängt von der Projektaktivität ab. |
| @StartOfDay | Wird mit DateTime-Feldern verwendet, um relativ zu heute zu filtern (z. B Closed Date>=@StartOfDay-7. ). |
| @StartOfMonth | Wird mit DateTime-Feldern verwendet, um relativ zum Anfang des Monats zu filtern (z. B Created Date>=@StartOfMonth-3. ). |
| @StartOfWeek | Wird mit DateTime-Feldern verwendet, um relativ zum Anfang der Woche zu filtern (z. B Changed Date>=@StartOfWeek-2. ). |
| @StartOfYear | Wird mit DateTime-Feldern verwendet, um relativ zum Anfang des Jahres zu filtern (z. B Target Date>=@StartOfYear. ). |
| @TeamAreas | Verwenden Sie den Bereichspfad nur mit dem =-Operator, um Elemente zu finden, die den Bereichspfaden eines Teams zugewiesen sind (z. B. Area Path=@TeamAreas [Fabrikam Fiber]\Web). Unterstützt im Webportal für Azure Boards und Azure DevOps Server. |
| @Today | Wird mit DateTime-Feldern verwendet, um relativ zu heute zu filtern (z. B Created Date>=@Today-7. ). Siehe Abfrage nach Datum oder aktueller Iteration. |
Allgemeine Makrobeispiele
Hier sind repräsentative Abfragebeispiele, die Makros verwenden, um Abfragen dynamisch zu gestalten:
| Query | Retouren (Webportal) |
|---|---|
Iteration Path = @CurrentIteration |
Arbeitsaufgaben im aktuellen Sprint |
Iteration Path = @CurrentIteration-1 |
Arbeitsaufgaben im vorherigen Sprint |
Assigned To = @Me |
Elemente, die dem aktuellen Benutzer zugewiesen sind |
Created Date >= @Today-30 |
Elemente, die in den letzten 30 Tagen erstellt wurden |
State = Active AND Area Path = @TeamAreas [Project]\MyTeam |
Aktive Elemente im Bereich Ihres Teams |
Work Item Type = [Any] |
Alle Arbeitsaufgabentypen (entfernt Typfilterung) |
Assigned To In Group @Follows |
Elemente, die Personen zugewiesen sind, denen Sie folgen |
Hinweis
Makros wie @CurrentIteration, @Me, @Followsund @TeamAreas funktionieren nur im Webportal. Verwenden Sie für REST-APIs, CLI und Power BI stattdessen direkte Datums- und Benutzer-IDs. Alternativen finden Sie unter Abfrage nach Datum oder aktueller Iteration.
Verwandte Inhalte
- Verwenden der Schnellreferenz für die Abfrage
- Informationen zu verwalteten Abfragen
- Zugreifen auf den Arbeitsauftragfeldindex
- Verstehen der WIQL-Syntax
REST-API
Informationen zur programmgesteuerten Interaktion mit Abfragen finden Sie in den folgenden REST-API-Ressourcen: