primary:一个需要union操作或者含有子查询的select,位于最外层的单位查询的select_type即为primary。且只有一个 union:union连接的两个select查询,第一个查询是dervied派生表,除了第一个表外,第二个以后的表select_type都是union dependent union:与union一样,出现在union 或union all语句中,但是这个查询要受到外部查...
1.explain输出内容有图片中12项 2.select_type (1)simple 表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个 (2).primary 一个需要union操作或者含有子查询的select,位于最外层的单位查询的select_type即为primary。且只有一个 (3).subquery 除了from字句中包含的...
根据上面说明,第一个SELECT 为PRIMARY,第二个及之后的所有SELECT 为 UNION SELECT TYPE; 然后id 为 1 的再执行查询; 最后一行表示不查询,只是将两个结果集合并。 3、 DEPENDENT UNION DEPENDENT UNION,子查询中的UNION操作,从UNION 第二个及之后的所有SELECT语句的SELECT TYPE为 DEPENDENT UNION DEPENDENT SUBQUERY,...
1. 简单SELECT(SIMPLE):这种类型不使用UNION或子查询,如查询`mysql> explain select * from t3 where id=3952602;`,结果显示为:SELECT_TYPE: PRIMARY table: t3 type: const possible_keys: PRIMARY,idx_t3_id key: PRIMARY key_len: 4 ref: const rows: 1 Extra: NULL 2. 子查询:`ex...
对于包含UNION、UNION ALL或者子查询的大查询来说,它是由几个小查询组成的,其中最左边的那个查询的select_type值就是PRIMARY 比如说: 3|0union 接着上面的说,包含UNION、UNION ALL或者子查询的大查询来说,它是由几个小查询组成的嘛。除了第一个是 PRIMARY,其他的都是 UNION ...
1. SIMPLE: 简单的SELECT,不包含UNION或子查询,如:sqlmysql> EXPLAIN SELECT * FROM t3 WHERE id=3952602;这里,select_type为SIMPLE,表示直接对t3表进行查询。2. PRIMARY 或 DERIVED: 如果在嵌套查询中,如:sqlmysql> EXPLAIN SELECT * FROM (SELECT * FROM t3 WHERE id=3952602) a;外层查询...
一 简介:今天咱们来聊聊explain的select_type 二 类型 (1)SIMPLE 简单的SELECT语句(不包括UNION操作或子查询操作) (2)PRIMARY/UNION PRIMARY:查询中最外层的SELECT(如两表做UNION或者存在子查询的外层的表操作为PRIMARY,内层的操作为UNION) ...
对于包含UNION或者UNION ALL 或者子查询的大查询来说,它是由几个小查询组成的,其中最左边的查询的select_type 值就是 PRIMARY 对于包含 UNION或者UNION ALL 的大查询来说,它是由几个小查询组成的,其中除了最左边的那个小查询以外,其余的小查询的 select_type值就是UNION ...
详情请查看视频回答
从上面可以看到s1查询的select_type就是primary类型。 Union 对于union和union all都是有好几个select组成,除了最左边的是primary外,其他的都是union,从上面的例子就可以看到。 Union Result 当使用union去重时候,会创建临时表,这个临时表的select type就是union result。 SUBQUERY 如果子查询不能满足semi-join的查询条...