这里是 SQL 初学者。
我有一个大约需要 10 秒才能运行的查询,因此我们的应用程序速度变慢了。
是否可以在 MySQL 或更普遍的 SQL 中让服务器定期(每 1 到 5 分钟)运行查询并将其存储在某个地方,以便我可以查询此“缓存”表以便于访问?
提前致谢!
最佳答案
很可能取决于您的查询是什么,您可以通过在表上创建缺失索引来加快查询速度。放EXPLAIN EXTENDED在您的查询之前查看它正在使用哪些索引,并尝试找出应该索引哪些列。应该索引的列是 where 语句中的列,以及连接中使用的任何字段。如果您提供查询和表架构,我们可能会帮助推荐一些索引。
虽然可能有很多方法可以每 5 分钟运行一个进程来填充临时表(cron 作业、计划任务、从您的应用程序运行线程),但您最好在使用之前用尽索引选项像这样的严厉措施,可能只会使用更多的资源。并且不一定会提高您的应用程序的性能。
关于sql - SQL查询结果如何存储以便快速访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1671403/