You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
You can always count on Jira to help you streamline your work and processes.
However, as your Jira instance grows, so will the number of issues you have to manage. Even if you’re a seasoned Jira user, navigating your issues or tickets effectively can be a challenge.
Maintaining your streamlined workflow can also be tricky then – but this is where Jira Query Language (JQL) comes into the picture.
JQL is an incredibly powerful tool when it comes to searching Jira – and being able to efficiently and effectively search through your Jira instance is key to not only maintain but also optimize your workflow.
Here’s how you can use JQL subqueries (and other secrets) to do exactly just that!
If you frequently search for all ‘To Do’ stories for backlog grooming purposes – then you should save the query as a filter.
This saves you the trouble of typing the queries into the advanced search bar multiple times.
Your saved filters can also be shared with your teams (review your permissions beforehand) which will then boost team alignment.
If you have issues blocking your projects and you can’t effectively search for them, then you can create a dedicated search filter using the right JQL keywords.
Step 1: Create a new dashboard
Step 2: Build the right JQL query and save as filter
Project = APP AND fixVersion = 1.0 AND Status = “Blocked” AND duedate < now()
The query assignee is EMPTY lets you pull all issues without an assignee. To narrow your search; say, issues without an assignee that haven’t been updated in the past week and are still open, then you can modify the query with additional JQL.
Assignee is EMPTY AND updatedDate < 1w AND Status = “Open”
If you have very specific search needs that existing JQL queries can’t help you meet, then you’ve probably been manually filtering out your search results until you find what you need.
Eliminate this counter-productive practice by leveraging JQL apps that can extend JQL functionality like JQL Search Extensions which offers over 50 additional JQL keywords.
The app enables you to extensively search and report on issues, comments, subtasks, attachments, versions, epics and links, so you can find content swiftly.
While native JQL features can’t search through attachments, extended JQL functionality can. This is one of the secrets to a highly optimized workflow.
Once you have the add-on (i.e., the one mentioned above), you can find attachments containing a specific word like “docker” using the query below:
attachmentExtension = pdf AND attachmentContent ~ “docker”
Building up from the use case above, you can also leverage the search extension capabilities to find issues that are related with links, epics, or even subtask-parent relationships.
You do this by adding subqueries to your initial query. For instance, find stories with subtasks that are not done using:
issueType = "Story" AND subtaskStatus != "Done"
7. Expand your reporting via JQL
You might already know that you can plug a saved filter into your dashboard and even automate reporting using said filter. Imagine how much more intelligence you can harvest when you can create very specific search queries?
More importantly, being able to tap into niche issue groups allows you to identify opportunities for greater workflow improvement.
All you have to do is to gather these secrets and start implementing them yourself! If you have any questions about JQL, feel free to drop a comment below.
Weronika Spaleniak Appfire