相同的sql语句,在服务器A,服务器B里面的执行速度相差巨大,求原因!

SELECT*FROM`partstore`WHEREidin(selectdistinct(partstore_id)fromsellswhere(all_part=1... SELECT * FROM `partstore` WHERE id in (select distinct(partstore_id) from sells where (all_part=1 or part_id=922 or parttype_id in (select parttype from part where id= 922)) and (all_car=1 or car_id=2448 or brand_id in (select brand_id from car where id=2448) or producer_id in (select producer_id from car where id =2448)) and (allcartype=1 or cartype_id in (select type from car where id=2448))) and province_id=9 and city_id=3 LIMIT 0,28

这个是sql语句
服务器A的配置要好于 服务器B很多
但是
服务器A上的执行时间是:6.4371秒
服务器B上的执行时间是:0.020901s
数据库都是一个结构也一样,版本好不一样
哪里的问题呢?
展开
 我来答
szm341
2012-09-27 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5150万
展开全部
影响效率的因素有很多,比如说数据量,A如果有100w而B只有10条,那么显然B的效率要高
版本因素也有,版本不同内部运作机制肯定也会有差别
再有就是缓存,A服务器中可能没有缓存过相应数据,而B中有
百度网友0319a0e
2012-09-27 · TA获得超过2.2万个赞
知道小有建树答主
回答量:2080
采纳率:85%
帮助的人:1150万
展开全部
说明你的SQL 在B服务器上执行的时候被 优化了 而在A 上没有被优化,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jefferyjie
2012-09-27 · TA获得超过251个赞
知道小有建树答主
回答量:587
采纳率:0%
帮助的人:523万
展开全部
是数据库软件的问题,你把a服务器上的数据库版本换成和b服务器数据库版本一模一样的看看.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式