• It's not a question of there being an advantage of one over the other, since they do different things. CROSS APPLY is very similar to INNER JOIN, but with the join ON conditions inside the APPLY as WHERE conditions. UNION [ALL] combines result sets end to end, producing a single result set; it's more like an append.