首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么声明表变量比临时表慢?

为什么声明表变量比临时表慢?
EN

Stack Overflow用户
提问于 2014-01-23 10:31:02
回答 1查看 1.4K关注 0票数 6

我的后台处理是批量更新/插入数据。我需要将一些数据存储在临时表中,以便以后使用。我有5张临时桌子。如果使用临时表(CREATE #T),则需要2-3秒,但如果使用TABLE变量(声明@T表),则需要超过90秒。这是一个样本临时表,

代码语言:javascript
运行
复制
CREATE TABLE #TempAttributes
(
    AID int
    ,PID int
    ,ATypeValue nvarchar(MAX)
    ,ATypeKey nvarchar(MAX)
    ,PLanguageID int
);

为什么表变量非常慢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-23 11:17:48

我想这是因为表变量插入不支持并行计划。

并行查询处理是在MsSql中实现的并行查询的优化过程,临时表从中受益,而表变量则没有。

这是为什么我们不对大数据集使用表变量的主要原因之一(当作用域无关时)。

有关更多信息,请访问这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21305503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档