2016-11-28 66 views
0

如果非要在查询这个表,如果我只是group byphone_number将这一指数被用于Mysql的这对领域的多列索引(phone_numbername)的表MySql的集团通过使用指数

如果我执行涉及只是phone_number的任何操作将索引使用?

如果我想要group by phone_number,那么名称会使用这个索引吗?

+0

如何在数据库内部执行查询是很难说。找出发生的最好的方法是测试它并查看执行计划。你可以通过EXPLAIN来做到这一点。 (https://dev.mysql.com/doc/refman/5.5/en/execution-plan-information.html) – molig

回答

1

在某些情况下,MySQL能够使用索引访问执行GROUP BY。

用于使用为GROUP BY索引的先决条件是所有GROUP BY 列从相同的索引引用的属性,并且该 索引存储其键为了。

这意味着,你的情况是不可能性利用指数为您的问题

你可以找到更多在这里http://dev.mysql.com/doc/refman/5.7/en/group-by-optimization.html