首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何减少包含table_name记录的表的select * from 200k+查询执行时间?

如何减少包含table_name记录的表的select * from 200k+查询执行时间?
EN

Stack Overflow用户
提问于 2019-05-28 01:43:49
回答 1查看 68关注 0票数 0

我在RDS中设置了mysql表,并且正在从我的web应用程序进行查询。查询本身需要超过20秒,而其他自定义操作加起来不到0.5秒。有没有办法将查询执行时间减少到2-3秒?

我试过索引,但也没有用。

代码语言:javascript
运行
复制
$table_data = select * from table_name

我希望上面的查询尽可能少地执行。

EN

回答 1

Stack Overflow用户

发布于 2019-05-28 01:51:31

事情是这样的:

  • 您的查询没有筛选谓词(没有WHERE子句)。然后选择all rows of the table。
  • 您的查询具有*而不是列的子集。因此,它选择表的所有列

总而言之,你每次都会得到整个表。

在SQL端,您什么也做不了。您的机会现在驻留在数据库的管理员端。获得更多的硬件(更快的CPU),增加并行度(更多的内核),或者更快的SSD?

或者,您可以在您的应用程序端使用缓存。每5分钟只运行一次查询,并将行保留在内存中。

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

https://stackoverflow.com/questions/56330428

复制
相关文章

相似问题

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