performance of union versus union all
UNION ALL will perform better than UNION when you're not concerned about eliminating duplicate records because you're avoiding an expensive distinct sort operation. See: SQL SERVER – Difference Between Union vs. Union All – Optimal Performance Comparison
UNION ALL always is faster, because UNION exclude duplicated entries
UNION implement internally two queries.1.SELECT
which will return a dataset2.DISTINCT
. Anyone who has studied database internals can easily understand that a DISTINCT
clause is extremely costly in terms of processing.
If you are pretty sure that the resultant dataset need not have unique rows then we can skip UNION
and use UNION ALL
instead.
UNION ALL
will be same as UNION
except that it doesn't fire a DISTINCT
internally sparing us costly operations