Speed comparison of temporary tables against table variables
Part two of a five-part series of blogs

When you're programming in SQL, you often have the choice of using table variables or temporary tables. This blog considers whether one method is substantially quicker than the other (spoiler alert: not really).

  1. Are Temporary Tables or Table Variables Quicker in SQL?
  2. The Example Used for this Speed Comparison (this blog)
  3. Speed Comparison - Temporary Tables
  4. Speed Comparison - Table Variables
  5. Comparison of Results

Posted by Andy Brown on 02 March 2017

You need a minimum screen resolution of about 700 pixels width to see our blogs. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

The Example Used for this Speed Comparison

What I've chosen to do is to generate a table containing Wise Owl life advice:

Advice rows

The advice becomes a bit repetitive, since it repeats after 3 rows.  The idea is to ensure we have a couple of reasonably authentic columns of data.

 

The SQL queries used each include a variable setting the number of rows to be generated:

-- the number of rows to generate

DECLARE @max int = 100000

I'll try running the queries with this variable set to 100,000, 1 million, 3 million and 5 million.  The query should count the number of rows for each type of advice to produce something like this:

Frequency of advice

Given the advice will be randomly generated in equal amounts, the frequencies should be similar!

 

Let's start with temporary tables ...

This blog has 0 threads Add post