您可以使用 EXPLAIN 关键字来描述联接将如何影响将联接在一起的行数。如果密钥尚不存在,这也将帮助您正确使用密钥。解释会告诉您何时它认为需要使用临时表(磁盘空间)。根据要连接的行的大小,您可以粗略地估计您的磁盘空间需求。
请参阅此处的文档解释:
http://dev.mysql.com/doc/refman/5.0/en/explain.html
基本上,只需在您的选择查询前面添加“解释”即可获取信息输出。我相信您也可以根据需要以编程方式执行此操作,并在实际代码中使用结果,例如您需要计算(估计)大型查询运行时间并将其显示给用户,然后再继续。