摘要: SQLServer表变量和临时表创建时都存储在内存中,直到他们的size达到指定大小后才会被保存到disk。他们的区别如下(补充中):1. 临时表有统计,表变量没有统计;2. 临时表有可能引起recompile(多数场合是因为Schema Changed或者Statistics Changed),表... 阅读全文
posted @ 2012-10-23 11:46 RoyLiu 阅读(511) 评论(0) 推荐(0) 编辑
摘要: 使用复杂的SQL脚本(包含多个子查询,连接,复杂的查询条件等)做查询时,有时候会碰到SQL性能问题。使用Set Statistics Profile on打开查询计划查看SQLServer优化器是否选择了适当的连接方式来做join,例如:如果在数据量很大的两个结果集间做连接使用了Nest Loop方式的连接则视为不适当。如果存在上述问题,查看查询计划中连接操作所连接的两个表的EstimateRows是否和实际的结果集行数差距很大。如果存在上述问题,使用sp_helpstats N'your_table_name', 'ALL'和DBCC SHOW_STATIST 阅读全文
posted @ 2012-10-23 11:12 RoyLiu 阅读(222) 评论(0) 推荐(0) 编辑