存储过程性能测试之_Sql执行速度的比较



前言

大数据量处理的存储过程执行时间非常长的时候,我们需要考虑对整个存储过程的sql脚本进行一次性能评估测试,主要是对处理大数据量的sql语句进行性能评估。有时候主观的对一个语句的性能评估需要熟悉sql语句的处理逻辑,也就需要对sql的深入了解和认识。一般情况下,测试人只熟悉简单的sql,那么对sql的性能评估也就无法从主观上去考虑,而且主观上的判断有时候还不一定正确。

针对主观无法评估sql的性能上,那我们就写一个比较简单的测试sql去测试处理速度,检查处理时间,在一定的程度上反馈相关sql的处理速度,尽可能让开发在相关处理语句上进行性能优化。

问题: 

需求:从铃音平台(源数据A)同步100万的铃音资源到短搜系统(目标数据库B)中,数据库B中已经存在铃音资源,只是从在同步的铃音资源中更新铃音资源。在同步资源中,更新铃音资源步骤中,开发的做法是:

1 将同步回来的铃音资源放在临时表1(#RingResource2

2 写查语句,从临时表(#RingResource2)筛选出短搜现有的铃音表(Resource_Ring)不存在的铃音。

3 将筛选出来的铃音插入到短搜铃音表中(Resource_Ring

步骤2中查询短搜现有的铃音表(Resource_Ring)不存在的铃音涉及到的数据非常大,Resource_Ring26万的数据,#RingResource2有100万的数据

针对这种查询,我比较两种写法(比较not in和not exists的查询速度),其中#RingResource存放的是短搜现有的铃音表(Resource_Ring)的数据

1 SELECT * FROM #RingResource WHERE RingNo NOT IN  (SELECT RingNo FROM #RingResource2)

2 SELECT * FROM #RingResource WHERE NOT EXISTS  (SELECT RingNo FROM #RingResource2

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值