事件:
公司的门户网站查询全部累积的商家及对应用户信息时超慢。
一些信息:
网站用的PHP+MYSQL+Apache,
数据库管理用的phpMyAdmin。
表信息:
t_user_all(user_id[PK],company_id) 3w条左右,
t_company(id[PK],company_id) 3w条左右。
语句:
select c.company_id,u.user_id from t_company c
left join t_user_all u on c.company_id = company_id
where 1 limit 0,30;
结果:
查询起来很慢
分析:
发现t_company表中company_id并不是主键,初步怀疑是company_id没有INDEX索引导致关联查询耗时长。
解决:
对t_company表的company_id字段添加了一个叫index_company_id_1的INDEX类型索引后,问题解决,查询耗时从4点几秒,缩短到0.00几秒。