title: UNION versus SELECT DISTINCT and UNION ALL Performance
body: <p>Is there any difference between these two performance-wise?</p>
  
  <pre><code>-- eliminate duplicates using UNION
  SELECT col1,col2,col3 FROM Table1 
  UNION SELECT col1,col2,col3 FROM Table2 
  UNION SELECT col1,col2,col3 FROM Table3 
  UNION SELECT col1,col2,col3 FROM Table4 
  UNION SELECT col1,col2,col3 FROM Table5       
  UNION SELECT col1,col2,col3 FROM Table6       
  UNION SELECT col1,col2,col3 FROM Table7       
  UNION SELECT col1,col2,col3 FROM Table8       
  
  -- eliminate duplicates using DISTINCT    
  SELECT DISTINCT * FROM
  (     
      SELECT col1,col2,col3 FROM Table1 
      UNION ALL SELECT col1,col2,col3 FROM Table2 
      UNION ALL SELECT col1,col2,col3 FROM Table3 
      UNION ALL SELECT col1,col2,col3 FROM Table4 
      UNION ALL SELECT col1,col2,col3 FROM Table5       
      UNION ALL SELECT col1,col2,col3 FROM Table6       
      UNION ALL SELECT col1,col2,col3 FROM Table7       
      UNION ALL SELECT col1,col2,col3 FROM Table8       
  ) x   
  </code></pre>