title: SSIS for table-to-table inserts vs. (SQL only) INSERT INTO () SELECT FROM approach
body: <p>I am currently transferring a large amount of records from one table to another, summarizing in the process. So, I have a SQL in this general format:</p>
  
  <pre><code>INSERT INTO TargetTable
     (Col1,
     Col2,
     ...
     ColX)
     Tot
     )
  SELECT
     Col1,
     Col2,
     ...
     ColX
     SUM(TOT)
  FROM 
     SourceTable
  GROUP BY
     Col1,
     Col2,
     ...
     ColX
  </code></pre>
  
  <p>Is there any performance advantage of moving this SQL into an SSIS task when transferring records from one table to another using a SQL SELECT as a source? For example, is logging turned off?</p>
  
  <p>Secondary question: Are there any tactics that I could use to ensure a maximum transfer rate? For example, removing indexes from the Target table before inserting, locking the table, etc?</p>