1、@也是在tempdb里面的。
2、@这类表在定义的时候就 要建约束,否则后面不能想临时表那样建索引加快速度。
3、@的统计信息只有0或者1,临时表的统计信息和实体表一样
4、@通常建议在小于100行数据时用,#、##这类可以处理大数据量
2、@这类表在定义的时候就 要建约束,否则后面不能想临时表那样建索引加快速度。
3、@的统计信息只有0或者1,临时表的统计信息和实体表一样
4、@通常建议在小于100行数据时用,#、##这类可以处理大数据量
因为我发现在用#的临时表的时候,在写临时表时,硬盘在不断的读取,tempdb不断的增大,当写完临时表的时候,才用到cpu的计算,我统计了一下,在读写#临时表的时候,需要4、5分钟,在cpu计算的时候,才不到4、5秒的时间,我的意思是,如何加快tempdb的读取时间?有没有什么办法加快?
2、tempdb的“数据文件”可以拆成4个,放到不同的物理磁盘
3、tempdb所在的磁盘如果IO没问题的话,频繁读写也不会成为瓶颈。
4、如果你对大数据量使用@,我就试过,速度极其慢
因为我发现在用#的临时表的时候,在写临时表时,硬盘在不断的读取,tempdb不断的增大,当写完临时表的时候,才用到cpu的计算,我统计了一下,在读写#临时表的时候,需要4、5分钟,在cpu计算的时候,才不到4、5秒的时间,我的意思是,如何加快tempdb的读取时间?有没有什么办法加快?你可以考虑给#临时表建索引,来加快访问的速度
BEGIN
drop table #tempTB1
END
CREATE table #tempTB1
(
stat_day varchar(10)
)
CREATE clustered index tempTB1_Index1 on #tempTB1 (stat_day)
http://blog.csdn.net/roy_88/article/details/8461942
主要方法是配置快速的TEMPDB硬盘,对临时表建立合理索引,及时释放
而小数据量可直接上内存表变量@table,使用临活,通常不会出现阻塞问题