https://blog.csdn.net/hliq5399/article/details/94724584
Mysql优化:
1、对查询进行优化,应尽量避免全表扫描,可在where及order by涉及的列上建立索引。
2、避免在where 子句中使用!=或<>操作,否则引擎会放弃使用索引而进行全表扫描。
3、尽量使用数字型字段,若只含数值信息的字段尽量不要设计为字符型,这样会降低查询和连接的性能,。
因为引擎在处理查询和连接时会对字符串中的每个字符进行比较,而对于数字型而言,只需要比较
一次就够了。
4 任何地方不要使用select * from t,用具体的字段列表代替“*”,不要返回用不到的任何字段。
5、避免频繁创建和删除临时表,以减少系统表资源的消耗。诸如此类,等等等等...
1 通过
select xx from A a left join B b tou on a.telephone=b.telephone and b.taskId in ()..
Mysql查询速度居然占用了 30m多,很慢。
通过采用了索引的方法,即在B表中需要连接的字段建立索引(A为主表,必须一个一个查,无法优化,只能B表),即字段
telephone和taskId ,建立索引如下:
create index B_index_tel_tskId on B(telephone,taskId);
此时在
select xx from A a left join B b tou on a.telephone=b.telephone and b.taskId in ()..
查询时间不超过1s,时间提升了很大级别。