查的时候总是查询时间很长,动不动就超时,有没有什么好的解决方案啊
1
RedBeanIce 2021-03-08 09:35:19 +08:00
你又不问优化,一句空白的话问出来。又有什么用。
MySQL 优化指南,请。 |
2
xuanbg 2021-03-08 09:45:24 +08:00
啥情况都不说,那也只能 MySQL 优化指南自己看了
|
3
wangritian 2021-03-08 09:57:52 +08:00
兄弟,你回头看自己提的问题,能看懂吗?提问一定要尽量精简的给出全部信息啊
|
4
Umenezumi 2021-03-08 10:00:00 +08:00
「 JOIN 」 竟然还拼错了。。
|
5
tankren 2021-03-08 10:25:21 +08:00
JOIN
|
6
phpfpm 2021-03-08 10:27:43 +08:00
优化 join 的方式是不要写 join 。
改成子查询+多次查询。 拼接数据的过程请交给代码。 太复杂的逻辑增加临时表之类的 |
7
zhuzhibin 2021-03-08 10:44:05 +08:00
哈哈 这个老哥幽默
|
8
clf 2021-03-08 10:58:49 +08:00
JOIN on 的相关字段建好索引能优化 join 的效率。
考虑把常用的条件字段塞到一个表里,单表条件搜索完毕后再用关联字段去另外一个表里取数据。 |
9
linxiaojialin 2021-03-08 12:23:02 +08:00
如 6 楼所言。具体点就是:
如果 join 是为了获取更多的字段,可以改成多次查询(留意 N+1 的问题),拼接数据的过程请交给代码; 如果 join 是为了筛选,可以用 where in,where exist 等等子查询; 以上基本就能解决,如果还不行,再考虑临时表。 |
10
littlewing 2021-03-08 19:47:09 +08:00
业务代码自己处理,不用 join
|