Jira ist eines der am weitesten verbreiteten Tools für das Projektmanagement und die Fehlerverfolgung. Eine der leistungsstärksten Funktionen von Jira ist die Jira Query Language (JQL). Sie ermöglicht es Benutzern, gezielt nach Aufgaben und Vorgängen zu suchen. In diesem Blog-Beitrag erklären wir, was JQL ist, wie es funktioniert und welche Möglichkeiten es bietet.

Was ist JQL?
JQL ist eine speziell für Jira entwickelte Abfragesprache. Es lassen sich damit komplexe Suchanfragen erstellen, um bestimmte Vorgänge in Jira zu finden. Im Vergleich zur einfachen Suchfunktion bietet es eine deutlich höhere Flexibilität.
Es kombiniert Schlüsselwörter, Felder, Operatoren und Funktionen. Dadurch können Benutzer spezifische Kriterien für ihre Suche definieren.
Dementsprechend ist die Jira Query Language keine vollwertige Programmiersprache, sondern eine Abfragesprache. Während Programmiersprachen wie Java oder Python vollständige Kontrollstrukturen, Variablenzuweisungen und Schleifen enthalten, dient JQL ausschließlich dazu, Daten innerhalb von Jira zu suchen und zu filtern. Es ähnelt eher SQL in Bezug auf seine Suchmöglichkeiten, hat aber keinen Zugriff auf komplexe Programmierlogik oder externe APIs.
Grundlegende Syntax von JQL
Die grundlegende Syntax einer JQL-Abfrage setzt sich aus drei Elementen zusammen:
- Feld: Das Jira-Feld, das abgefragt wird (z.B.
status
,assignee
,priority
). - Operator: Bestimmt die Beziehung zwischen dem Feld und dem Wert (z.B.
=
,!=
,IN
). - Wert: Der Wert, nach dem gesucht wird (z.B.
Open
,High
,John Doe
).
Einfache JQL-Abfragen
Einige Beispiele für einfache Abfragen:
- Um alle offenen Aufgaben anzuzeigen:
status = Open
- Wenn man Aufgaben eines bestimmten Benutzers finden möchte:
assignee = "Max Mustermann"
- Falls man nur Aufgaben mit hoher Priorität anzeigen möchte:
priority = High
- Wenn man alle Aufgaben eines bestimmten Projekts sucht:
project = "Marketing"
Erweiterte JQL-Funktionen
Es kann nicht nur einfache, sondern auch komplexe Abfragen durchführen. Dabei kommen logische Operatoren, Vergleichsoperatoren und Funktionen zum Einsatz.
Logische Operatoren
- AND: Verknüpft mehrere Bedingungen, sodass beide erfüllt sein müssen.
status = Open AND priority = High
- OR: Eine der Bedingungen muss erfüllt sein.
status = Open OR status = In Progress
- NOT: Negiert eine Bedingung.
status != Closed
Vergleichsoperatoren
=
: Ist gleich!=
: Ist ungleich>
: Größer als<
: Kleiner als>=
: Größer oder gleich<=
: Kleiner oder gleich
Beispiel:
created >= "2024-01-01" AND created <= "2024-02-01"
Listen-Operatoren
- IN: Vergleicht mit einer Liste von Werten.
status IN (Open, "In Progress", Reopened)
- NOT IN: Ausschluss einer Liste von Werten.
priority NOT IN (Low, Medium)
Funktionen in JQL
Es bietet einige eingebaute Funktionen, die flexiblere Suchanfragen ermöglichen:
- startOfDay(): Beginn des aktuellen Tages
- endOfWeek(): Ende der aktuellen Woche
- now(): Aktueller Zeitpunkt
- updated(): Zeigt an, wann ein Vorgang zuletzt aktualisiert wurde
Beispiel:
updated >= startOfDay()
Diese Abfrage liefert alle Vorgänge, deren Aktualisierung heute stattgefunden hat.
Praxisbeispiele für JQL
1. Alle Aufgaben, deren Erstellung in den letzten 7 Tagen erfolgt ist
created >= -7d
2. Alle abgeschlossenen Aufgaben eines bestimmten Benutzers
status = Done AND assignee = "Max Mustermann"
3. Aufgaben mit Kommentaren in den letzten 24 Stunden
updated >= -1d AND comment IS NOT EMPTY
4. Aufgaben in einem bestimmten Sprint
sprint = "Sprint 15"
5. Alle Aufgaben mit bestimmten Schlagwörtern
labels IN (Bug, "Customer Request")
Fazit
JQL ist ein leistungsstarkes Werkzeug, das Jira-Benutzern hilft, gezielt nach Aufgaben zu suchen und komplexe Filter zu erstellen. Dank der Kombination aus Feldern, Operatoren und Funktionen lassen sich nahezu alle gewünschten Abfragen formulieren. Wer JQL beherrscht, kann Jira effizienter nutzen und relevante Informationen schneller finden.
Wenn Du Jira häufig verwendest, lohnt es sich, Dich damit näher zu beschäftigen. So kannst Du individuelle Abfragen erstellen und eine bessere Übersicht über Deine Projekte erhalten.