The problem with the acronym JQL is that it makes you think of a development language, something highly technical that requires diplomas and skills. In reality, JQL is a fairly simple language to understand, allowing you to carry out queries or searches to display the desired entries very precisely. Where other products offer numerous filters to try and obtain what you want, Jira prefers to offer JQL to easily display what you’re looking for very precisely. The search interfaces remain uncluttered, and there are no search filter limits. This is an important feature of Jira.
How does JQL work?
JQL allows you to perform advanced searches for Jira tasks using simple language elements. Let’s take a simple search:
The query asks you to display the current tasks in a given project, sorted in descending order of creation date. To do this, you need to respect the language elements for the fields (here: “Project”, “Status”), for the operators (here “=”), the link between two Clauses (here AND), and the display order (“order by”).
Firstly, a clause is made up of a field, an operator and a value. Clauses can be added and linked by keywords (AND, OR, ORDER BY, … ).
Also, the value was not always known, so JQL provides functions for “calculating” this value. For example, to record a JQL query whose results will depend on the user logged in, the value will be the “currentuser()” function. There are a number of functions that can be used on certain fields. The JQL functions are listed here.
That’s all there is to it! Of course, you need to know the language elements and keywords of JQL to use it.
The fields are the native system fields that make up the tasks (project, date, task manager, status, etc.), but also custom fields defined by the Jira administrator.
Operators are the link between the field and the value
- “=”: exact value
- “in”: value included in the list of values that follows
- ‘!=’: different from
There are several ways of linking several Query Clauses (several filters).
What if there was no need to learn JQL?
For a computer language, JQL is very simple. However, there are a number of things you need to know, or have somewhere to remember. And it requires a certain amount of experience to make the most of the functions, keywords and operators. Indeed, recording advanced queries with functions can be very useful, and is one of the great strengths of the tool. But as such, JQL will always be too complex and discouraging for many users.
Good news! Atlassian is making artificial intelligence, which can be activated by the administrator, available for all its Cloud products. There are many uses for this, and one of them is to understand natural language and convert it into a JQL request.