<7>Using where:WHERE子句用于限制哪一个行匹配下一个表或发送到客户。除非你专门从表中索取或检查所有行,如果Extra值不为Using where并且表联接类型为ALL或index,查询可能会有一些错误。
<8>Using sort_union(...),?Using union(...),?Using intersect(...):这些函数说明如何为index_merge联接类型合并索引扫描。
<9>Using index for group-by:类似于访问表的Using index方式,Using index for group-by表示MySQL发现了一个索引,可以用来查询GROUP BY或DISTINCT查询的所有列,而不要额外搜索硬盘访问实际的表。并且,按最有效的方式使用索引,以便对于每个组,只读取少量索引条目。
?
我们知道,在数据量达到一定的程度之后,如果仅仅通过简单的表扫描来获取数据,那将是一个很好资源并且性能很烂的执行过程,而这过程当中一般的调优方案就是通过添加索引的方式进行,下面来一个简单的例子说明:
我们简单的来执行一个脚本
这里可以看到,只是单纯的通过表扫描(ALL)来获取数据,没有任何索引来优化查询。
下面我们来创建一个索引
大家,可以看到,这就是一个简单通过创建索引来优化T-SQL的例子。