SQL (使用临时表)
一、使用临时表的好处。
1、使用临时表最明显的一个好处就似乎可以提高数据库的性能,特别是查询的性能。
2、使用临时表还可以减少中间表的产生。
临时表的命名规则:
#t 表示本地变量
##t 表示全局变量
创建一个局部临时表:
create table #tab(id int primary key,name varchar(10))
创建一个全局临时表:
create table ##tab(id int primary key,name varchar(10))
SQL SERVER临时表的使用
--删除临时表#Tmp
create table #Tmp --创建临时表#Tmp
(
ID int IDENTITY (1,1) not null, --创建列ID,并且每次新增一条记录就会加1
WokNo varchar(50),
primary key (ID) --定义ID为临时表#Tmp的主键
);
Select * from #Tmp --查询临时表的数据
truncate table #Tmp --清空临时表的所有数据和约束
相关例子:
Declare @Wokno Varchar(500) --用来记录职工号
Declare @Str NVarchar(4000) --用来存放查询语句
Declare @Count int --求出总记录数
Declare @i int
Set @i = 0
Select @Count = Count(Distinct(Wokno)) from #Tmp
While @i < @Count
Begin
Set @Str = 'Select top 1 @Wokno = WokNo from #Tmp Where id not in (Select top ' + Str(@i) + 'id from #Tmp)'
Exec Sp_ExecuteSql @Str,N'@WokNo Varchar(500) OutPut',@WokNo Output
Select @WokNo,@i --一行一行把职工号显示出来
Set @i = @i + 1
End