我一直在阅读一些关于MysqL中的临时表,但一般来说,我是一个接受新手的人,特别是MysqL.我已经看了一些例子和关于如何创建一个临时表的MysqL文档,但是我试图确定临时表如何有益于我的应用程序,我猜其次我可以遇到什么样的问题.当然,每种情况都是不一样的,但我想我正在寻找的是关于这个话题的一般性建议.
我做了一些谷歌搜索,但没有找到我正在寻找的主题.如果你有这方面的经验,我很乐意听到.
谢谢,
马特
解决方法
当你有一个相当复杂的SELECT你想执行的临时表通常是有价值的然后执行一堆查询…
你可以这样做:
CREATE TEMPORARY TABLE myTopCustomers SELECT customers.*,count(*) num from customers join purchases using(customerID) join items using(itemID) GROUP BY customers.ID HAVING num > 10;
然后对myTopCustomers做一些查询,而不必在每个查询上进行购买和项目的连接.那么当您的应用程序不再需要数据库句柄时,不需要进行任何清理.
几乎总是会看到用于创建成本昂贵的派生表的临时表.