• Yes.  The UNION operator eliminates duplicates and hence needs to perform a sort operation.  If you know there are no duplicates (which I think there aren't, in this case) you can use UNION ALL to avoid the sort and thus, we hope, improve performance.

    Edit - hmmm.... I wrote this before you removed the code that you posted in your second post.

    John