选择临时表时是否复制了数据?

时间:2010-08-17 06:47:38

标签: sql-server

我想知道,在选择行并将它们插入临时表时,实际复制或刚引用的数据是什么?

例如:

SELECT * INTO #Temp FROM SomeTable

如果桌子很大,这会是一项代价高昂的操作吗?

从我的测试中看,它的执行速度与简单的SELECT一样快,但我想更好地了解它的实际工作方式。

干杯。

1 个答案:

答案 0 :(得分:2)

临时表在tempdb中分配。 SQL服务器通常会尝试将tempdb页面保留在内存中,但是大型表最终可能会写入磁盘。

是的,数据总是被复制。因此,例如,如果在选择临时表和以后的用法之间的另一个连接上发生UPDATE,则临时表将包含旧值