首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询时间太长,无法响应

查询时间太长,无法响应
EN

Stack Overflow用户
提问于 2019-09-08 17:22:28
回答 1查看 54关注 0票数 0

我有php列表的项目。

我正在从sql数据库中获取一个数组。

它工作正常,但最近的记录在增加,突然它没有在列表中显示记录。

建议!

我尝试过内部连接,它的记录较少,工作正常。

查询是:

代码语言:javascript
复制
  SELECT farmer.*, state.state_name, videos.video_url, employee.name AS nm 
      FROM farmer 
      LEFT JOIN state ON state.id = farmer.state 
      LEFT JOIN videos ON videos.farmer_id = farmer.id 
      LEFT JOIN employee ON farmer.employee_id = employee.id 
      WHERE farmer.is_deleted = 0 
      ORDER BY farmer.id DESC;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-08 20:33:07

要调试MySQL如何执行此查询,请使用EXPLAIN

解决这些问题的一个简单方法是正确使用indexes

  • 根据EXPLAIN的输出,确定在执行连接时使用的是哪个column ref
  • 在这些列上创建索引,可以是单独的索引,也可以是基于它们的行为的复合索引。
代码语言:javascript
复制
CREATE INDEX index_name ON table_name (col_name);  -- for composite key you can mention multiple columns.

如何帮助

  • 如果没有索引,MySQL将扫描连接表的每个记录的完整表,以匹配特定的记录。
  • 索引将帮助MySQL直接访问所需的记录本身,这可以极大地提高性能。

参考

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57844171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档