【发布时间】:2017-07-19 17:23:07
【问题描述】:
我有一个视图,其中查询来自 2 个不经常更改的表(它们每天更新一次或两次)并且最多有 2000 和 1000 行)。
MERGE 还是 TEMPTABLE 哪个算法应该执行得更好?
想知道,MySQL 会缓存查询结果,让 TEMPTABLE 成为我的最佳选择吗?
阅读https://dev.mysql.com/doc/refman/5.7/en/view-algorithms.html 我明白了,基本上,MERGE 算法会在调用它的查询中注入视图代码,然后运行。 TEMPTABLE 算法将使视图首先运行,将其结果存储到临时表中然后使用。但没有提到缓存。
我知道我可以选择自己实现物化视图 (http://www.fromdual.com/mysql-materialized-views)。 MySQL 可以自动缓存 TEMPTABLE 结果并使用它吗?
【问题讨论】: