如何大幅减少mySQL查询处理时间?

时间:2019-01-11 23:47:46

标签: mysql query-optimization

我感到麻烦的是,在mySQL中的查询正在处理大约8到10分钟,直到报告最终出现。我创建的索引很少,时间已减少到2-3分钟。但这似乎也太长了。

是否可以通过某种方式与ElasticSearch,Sphinx或类似的东西进行某种集成,以支持mySQL发出困难的请求。

  1. 大约有10个表,每个表是30-40k行,具有9-10列。
  2. 完整的数据库大小小于100M。数据主要是INT,DOUBLE或VARCHAR。
  3. 请求是这样的:

    SELECT SUM(`column1`) AS `sum` 
    FROM `table1` LEFT JOIN `table2` ON `table1`.`id` = `table2`.`id` 
    WHERE `column2` = ?s 
      AND `table2`.`datetime` BETWEEN STR_TO_DATE(?s, '%Y-%m-%d %H:%i:%s') AND STR_TO_DATE(?s, '%Y-%m-%d %H:%i:%s')```
    

1 个答案:

答案 0 :(得分:0)

好像我的代码有问题,因为处理时间与额外的循环请求有关,因此重复了一百次。

感谢社区的支持,我现在知道将来如何在这个领域提出问题。