mysql数据表有300万条记录,php写select的时候几乎无反应,是否可以通过索引简单解决?
发布网友
发布时间:2022-05-07 07:02
我来回答
共1个回答
热心网友
时间:2022-05-07 08:31
索引设置没问题,造成查询慢的问题可能有多个方面
1,where查出的数据量过大,尽可能让数据集缩小范围
2,你的联合索引是否被覆盖。由于一次查询只能用一个索引,如果你设置的联合索引的两个字段,其中有一个字段单独设置了索引,就可能使用了那一个索引而导致联合索引没有生效,where或着oriderby 没有索引的话会慢很多。所以用explain看下是不是用的联合索引
3,innodb引擎查询会扫表,速度比mysiam慢很多追问单一索引和联合索引根据什么优先生效,可以需要用到where和orderby的地方的字段都单独设置一个索引吗