Re: Table Variable vs Temporary Table
From: Alejandro Mesa (AlejandroMesa_at_discussions.microsoft.com)
Date: 11/24/04
- Next message: Marina S.: "Re: Can't concatenate string"
- Previous message: Ing. Branislav Gerzo: "Re: Fit table on one page if possible?"
- In reply to: Yoshi: "Re: Table Variable vs Temporary Table"
- Next in thread: Louis Davidson: "Re: Table Variable vs Temporary Table"
- Reply: Louis Davidson: "Re: Table Variable vs Temporary Table"
- Messages sorted by: [ date ] [ thread ]
Date: Wed, 24 Nov 2004 07:15:05 -0800
Temporary tables also cause sp recompilation (a new execution plan).
INF: Frequently Asked Questions - SQL Server 2000 - Table Variables
http://support.microsoft.com/default.aspx?scid=kb;en-us;305977
AMB
"Yoshi" wrote:
> Craig,
>
> We had a similiar issue where a developer wrote a Stored Procedure using a
> temporary "memory" variable. The process took all day. I changed it to a
> temporary table and it ran under 3 hours.
>
> This is what I understand... table variables are created in memory (RAM).
> They are supposed to be faster because of this. However, I have found that
> if the server has limited RAM and is not a dedicated SQL Server, table
> variables can be quite slow. I believe if the table variable is processing
> alot of data and the server doesn't have not RAM/memory, then it swaps to
> disk.
>
> My rule is if your dealing with alot of data, then use a temporary table
> otherwise use the table variable.
>
> Y
>
>
> "CB" <craig.bryden@derivco.com> wrote in message
> news:unzTDNj0EHA.3808@tk2msftngp13.phx.gbl...
> > Hi
> >
> > I have discoverred a situation where the performance between using a table
> > variable and a temporary table is remarkably different.
> > We have a query that declares a table variable, then populates it (this is
> > quick) and then this is used in a very complicated query where it is being
> > referenced many times in sub-queries. The query takes about 180 seconds to
> > run.
> >
> > I changed the query to use a temporary table. There were no logic changes.
> > In fact I simply did a search and replace on the table name (i am aliasing
> > the table everywhere). Using this method the query runs in 5 seconds.
> >
> > Can anyone please explain this difference to me? I did expect that the two
> > would not be the same but this is ridiculous.
> >
> > Any help would be appreciated
> >
> > Thanks
> >
> > Craig
> >
> >
> >
>
>
>
- Next message: Marina S.: "Re: Can't concatenate string"
- Previous message: Ing. Branislav Gerzo: "Re: Fit table on one page if possible?"
- In reply to: Yoshi: "Re: Table Variable vs Temporary Table"
- Next in thread: Louis Davidson: "Re: Table Variable vs Temporary Table"
- Reply: Louis Davidson: "Re: Table Variable vs Temporary Table"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|