Skip to main content

Examples

Practical examples organized by use case. Copy and adapt these queries for your projects.

Dependency and Blocking Analysis

Find issues blocked by incomplete work

linkedByStatus != "Done" AND linkedByNumber > 0

Find issues blocking high-priority work

issue in linksQuery("priority = High AND status != Done")

Find issues with circular dependencies

linksNumber > 0 AND linkedByNumber > 0

Find issues that depend on bugs

linkedByIssueType = "Bug"

Find critical path issues (many dependencies)

linkedByNumber > 5 AND status != Done

Hierarchy and Structure

Find epics with many stories

issuetype = Epic AND childrenNumber > 10

Find stories without subtasks

issuetype = Story AND childrenNumber = 0

Find orphan subtasks (missing parent)

issuetype = Sub-task AND issue not in childrenOf("issuetype = Story")

Find all children of in-progress epics

issue in childrenOf("issuetype = Epic AND status = 'In Progress'")

Find parents of blocked subtasks

issue in parentOf("status = Blocked AND issuetype = Sub-task")

Time Tracking and SLA

Find issues stuck in progress for over 2 weeks

issue > timeInStatus("project = DEV", "In Progress", "2w")

Find issues in review for more than 3 days

issue > timeInStatus("project = DEV", "In Review", "3d")

Find issues that spent less than 1 hour in QA

issue < timeInStatus("project = DEV", "QA", "1h")

Use Time in Status custom field

"Time in Development.time" > timeExpression("5d")

Find issues with long total cycle time

"In Progress.time" > timeExpression("1w") AND "In Review.time" > timeExpression("3d")

Change History and Audit

Find issues modified this month

issue in changedBy("project = DEV", "", "2024/01/01", "2024/01/31")

Find issues where priority was changed

issue in changedBy("project = DEV", "Priority", "2024/01/01")

Find issues transitioned to Done this sprint

issue in transitionedBy("project = DEV", "Done", "2024/01/15", "2024/01/29")

Find issues transitioned by a specific user

issue in transitionedBy("project = DEV", "Done", "2024/01/01", "", "john.smith")

Find issues not updated in 30 days

issue not in changedBy("project = DEV", "", "2024/01/01")

Comments and Communication

Find issues with recent comments

issue in commented("project = DEV", "", "2024/01/01")

Find issues with comments from stakeholders

issue in commented("project = DEV", "product.manager", "", "", "")

Find issues mentioning "urgent" in comments

issue in commented("project = DEV", "", "", "", "urgent")

Find issues without comments

issue not in commented("project = DEV", "", "1970/01/01")

Find issues with approved comments

issue in commented("project = DEV", "", "", "", "approved")

Attachments and Documentation

Find issues with PDF attachments

issue in attachment("project = DEV", "", "", "", "", "pdf")

Find issues with screenshots

issue in attachment("project = DEV", "", "", "", "", "png") OR
issue in attachment("project = DEV", "", "", "", "", "jpg")

Find issues with attachments from specific user

issue in attachment("project = DEV", "john.doe", "", "", "", "")

Find issues with design files

issue in attachment("project = DEV", "", "", "", "design.*", "")

Find issues without attachments

issue not in attachment("project = DEV", "", "", "", "", "")

Time Logging and Effort

Find issues with worklogs

issue in worklog("project = DEV")

Find issues with significant time logged (over 4 hours)

issue in worklog("project = DEV", "", "", "", "4h")

Find issues worked on by specific team member

issue in worklog("project = DEV", "john.smith")

Find issues with recent worklogs

issue in worklog("project = DEV", "", "2024/01/01", "2024/01/31")

Find issues with small time entries

issue in worklog("project = DEV", "", "", "", "", "30m")

Field Comparisons and Statistics

Find issues with story points above average

"Story Points" > avg("project = DEV AND status = Done")

Find outlier issues (max story points)

"Story Points" = max("project = DEV")

Find under-estimated issues

"Time Spent" > fieldValue("issue = SELF", "Original Estimate")

Find issues with matching versions

fixVersion in fieldValue("project = DEV", "affectedVersion")

Find issues with 3 or more labels

issue >= fieldCount("project = DEV", "labels", 3)

Pattern Matching with Regex

Find issues with version numbers in summary

issue in regex("project = DEV", "summary", "v[0-9]+[.][0-9]+")

Find issues with JIRA keys in description

issue in regex("project = DEV", "description", "[A-Z]+-[0-9]+")

Find issues with email addresses

issue in regex("project = DEV", "description", "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+[.][a-zA-Z]{2,}")

Find issues with error codes

issue in regex("project = DEV", "summary", "ERR-[0-9]{4}")

Find issues WITHOUT numbers in summary

issue not in regex("project = DEV", "summary", "[0-9]")

Combined Queries

High-priority bugs blocked by other issues

priority = High AND issuetype = Bug AND linkedByNumber > 0 AND linkedByStatus != "Done"

Recently completed stories with many subtasks

issue in transitionedBy("project = DEV", "Done", "2024/01/01") AND childrenNumber > 3

Stale issues that need attention

issue not in changedBy("project = DEV", "", "2024/01/01") AND status != Done AND linkedByPriority = "High"

Well-documented features

issue in commented("project = DEV", "", "", "", "") AND issue in attachment("project = DEV", "", "", "", "", "")

Issues ready for release

status = Done AND issue not in linkedByQuery("status != Done") AND childrenNumber = 0 OR issue in parentOf("status = Done")