A 3-column index on `(parent, siteid, woclass)` will most probably improve the efficiency of the query. It will certainly help to avoid the table scan. Most likely, with conditions on 3 column, the rows that match will be very few or at least a very small percentage of the table and an index seek will be far more efficient than a table scan. Even better, if the number of rows is small, the required sort will be efficient as well so you won't need to include the `order by` in the index (which may not be an option anyway, as the order by could be not arbitrary columns, for all we know). So, test the behaviour in your production/stage environment and if the efficiency gain is good enough, roll the change in production. (By the way, I'm not 100% sure about DB2 but you need to stop anything to add an index in most DBMS, I don't think you'd need it in DB2 either.)