在讨论临时表和表变量的区别时,其中一个重点就是两者的预估行数,在默认设置下,表变量的预估行数总是为1,而临时表的预估行数会随表中数据量的变化而变化.正是因为这个区别,在处理大数据量时往往推荐使用临时表而非表变量(当然还有索引的问题). 科普下, 查询优化器会根据预估行数和操作运算符来预估资源消耗,根据资源消耗情况来选取相对“较优”的执行计划,如果预估行数与实际行数差距较大,则可能生成不高效的执行计划. 举个栗子,看着远处的小土包没多远,骑着马跑了半天发现还没到,这就是看山跑死马的典故,如果能相对