MySQL之explain使用
是什么 使用EXPLAIN关键字可以模拟优化器执行SQL语句,从而知道MySQL是如何处理你的SQL语句的。 用法:explain+sql语句 explain之id id是以数字形式呈现,表示查询中执行select子句或操作表的顺序。数字越大,优先级越高,优化器优先执行。 id相同,从上往下顺序执行 id不同,id值越大,优先级越高,越先执行。 explain之select_type select_type表示查询的类型,主要是用来区别普通查询、联合查询、子查询等复杂查询。主要有以下几种: SIMPLE:简单的select查询,查询中不包含子查询或者UNION PRIMARY:查询中若包含任何复杂的子部分,最外层查询则被标记为PRIMARY SUBQUERY:在select或WHERE列表中包含了子查询。 DERIVED:在FROM列表中包含的子查询被标记为DERIVED(衍生),MySQL会递归执行这些子查询,把结果放在临时表里。 UNION:若第二个SELECT出现在UNION之后则被标记为UNION;若UNION包含在FROM子句的子查询中,外层SELECT将被标记为:DERIVED。 UNION RESULT:从UNION表获取结果的SELECT。 explain之table 显示这一行的数据是关于哪张表的! explain之type type显示查询使用了何种类型