我的网络应用程序中有6个报告。所有报告使用大约15个表连接的大查询,并且在向用户显示报告之前再次循环查询结果以进行一些计算。
这需要很长时间才能加载报告。我正在使用带Java的MySQL
解决此问题的最佳方法是什么?
答案 0 :(得分:1)
在查询前使用Explain
并确定Joins
是否正在使用任何索引。希望你通常以类似的方式加入你的表,所以如果你添加正确的索引,它应该加快它的速度。
例如,如果你有,
Select carrots FROM veggies
JOIN fruits ON fruits.color = veggies.color
WHERE veggies.weight=.5
您可能希望向color
表中的fruits
列添加索引,并为weight
表的veggies
列添加索引。