title: Speed of multiple variable assignment in T-SQL
body: <p>Imagine I have a chunk of initialisation code at the top of a stored procedure with a number of variable assignments:</p>
  
  <pre><code>SET @proc = 'sp_madeupname'
  SET @magic_number = 42
  SET @tomorrows_date = DATEADD(dd, 1, GETDATE())
  ...
  </code></pre>
  
  <p>Clearly doing all of the above as one SELECT would be faster:</p>
  
  <pre><code>SELECT
       @proc = 'sp_madeupname'
      ,@magic_number = 42
      ,@tomorrows_date = DATEADD(dd, 1, GETDATE())
  ...
  </code></pre>
  
  <p>But <em>how much</em> faster? Say if this stored procedure was executed as part of a loop, several thousand times, is it going to make any significant difference to the performance?</p>