在SQL Server中推荐一个好的临时表教程

Geo*_*ge2 4 sql sql-server temp-tables

我搜索但无法在SQL Server 2005/2008中为新手找到一个好的临时表使用教程.我想学习临时表与普通表的比较,它的生命周期和临时表的共享方式(在同一个会话中,交叉会话)?

乔治,提前谢谢

Ert*_*ara 6

有两种方法可以创建临时表.这个将创建表并从PHYSICALTABLE插入数据;

SELECT FIELD1,FIELD2,FIELD3 INTO TempTable FROM PHYSICALTABLE;
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用CREATE TABLE方法;

CREATE TABLE #TempTable (ID int,NAME varchar(50));
INSERT INTO #TempTable(ID,NAME) VALUES(1,'PERSON');
Run Code Online (Sandbox Code Playgroud)

关闭连接后,或者对它们使用DROP TABLE命令时,服务器将删除临时表.除非使用全局临时表(通过在表名中添加##),否则每个连接只能访问自己的临时表.我读过临时表导致大表的性能下降,所以我通常只使用临时表来UNION两个表然后分组+ SUM这两个.