Using disjunctions in complex queries

  • Release version: Zurich
  • Updated July 31, 2025
  • 1 minute to read
  • ServiceNow performs conjunction (AND) statements before disjunction (OR) statements in a query.

    When you create a complex query that combines AND and OR conditions, you must use parenthesis around disjunctions to ensure proper grouping of query elements.

    Example

    Find all closed incidents (state = 6) that are either Priority 1 or Priority 2.

    • Correct query (with parentheses):

      (priority = 1 || priority = 2) && state = 6

      This query returns all closed incidents where the priority is 1 OR 2.

    • Incorrect query (without parentheses):

      priority = 1 || priority = 2 && state = 6

      Without parentheses, this query is evaluated as: priority = 1 OR (priority = 2 AND state = 6). This returns ALL Priority 1 incidents regardless of state, plus only the closed Priority 2 incidents.

    Table 1. Comparison
    Query Evaluated as Result
    (priority = 1 || priority = 2) && state = 6
    (P1 OR P2) AND Closed Closed P1 and P2 incidents only
    priority = 1 || priority = 2 && state = 6
    P1 OR (P2 AND Closed) ALL P1 incidents + only closed P2

    Always use parentheses around OR conditions when combining them with AND conditions. This ensures your query returns the expected results.