2 haisheng003 haisheng003 于 2016.09.22 12:38 提问

sql查询语句优化求解答?

现在有三个表连接查询

select from a where (a 条件) left join b on a.id=b.id left join c on a.id=c.id

其中 a表 里面有 50万数据 根据条查出来 1000多 b表里面有10万 数据 c表里也是10万数据,如何进行查询优化,减少查询量?

4个回答

zy_281870667
zy_281870667   Ds   Rxr 2016.09.22 13:14

表数量大的话,建议分批查询,数据量大的表的关联查询很耗时耗性能

yicp123
yicp123   2016.09.22 13:44

用小表驱动大表,再加上合适的索引
参考自:
mysql join用法及优化 http://www.data.5helpyou.com/article209.html

seeze
seeze   2016.09.22 14:36

挺久没接触这个了,我记得有一个方式是把关联方式
select from a where (a 条件) left join b on a.id=b.id
改为
select from a where (a 条件) and exist(select xx from b where b.id = a.id)
并在id字段上建索引

liuxuejava
liuxuejava   2016.09.22 16:13

我也不会,很想知道是怎么优化的

Csdn user default icon
上传中...
上传图片
插入图片