数据库临时表问题

我查询材料表里的数据140万条需要3分多钟,而将这140万材料插入一个临时表却仅需要8秒,请问为什么插入数据要比查询数据块,临时表的原理是什么?谢谢!而且电脑配置越好效果... 我查询材料表里的数据140万条需要3分多钟,
而将这140万材料插入一个临时表却仅需要8秒,请问为什么插入数据要比查询数据块,临时表的原理是什么?
谢谢!
而且电脑配置越好 效果越明显,我在本地查询数据直接查用的时间是插入临时表再查用的时间的2倍,而在服务器上这样对比是20多倍。是不是内存,cpu越高,临时表的效果越明显?
展开
 我来答
突击手觅患
2010-04-23 · TA获得超过962个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:297万
展开全部
这个差距的产生并不是配置的问题,配置好的话,两种查询的速度都会提升。
造成差距的原因:
1、原表和临时表的共享操作不一样。一般来说,临时表只有你一个线程在用,没有任何用户、线程和你竞争使用该临时表。而原表总是有不同的用户、不同的线程在共享使用,对查询响最大的是有大量的数据在写入或者频繁的写入,那么查询的时候就会涉及到很多事务机制(并发、锁)的问题,产生了不同类型的等待事件,所以慢。相比较临时表就没有并发,只要服务器配置好,就非常快。

2、原表和临时表的索引差异。索引对查询的影响也是很大的,不过我相信你这里不会是这个原因。

对于你说的查询操作比插入操作慢,是查询和插入的机制问题,涉及数据库引擎的工作原理,不好深入。简单的说,虽然插入语句好像也包含了查询,可是其并不将查询结果返回,只是在数据库中直接打包做了复制而已,所以查询结果集越大,耗时差异越明显。
壹寰(深圳)科技文化有限公司
2021-03-27 广告
不同公司提供的方案也不一样。如果想了解更多详细信息,可以咨询下壹寰(深圳)科技文化有限公司。91数据恢复是壹寰(深圳)科技文化有限公司旗下专业数据恢复品牌,91数据恢复专注于勒索病毒数据恢复、勒索病毒数据修复、数据库修复、数据库解密恢复、企... 点击进入详情页
本回答由壹寰(深圳)科技文化有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式